【Python CheckiO 题解】All the Same


CheckiO 是面向初学者和高级程序员的编码游戏,使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务,从而提高你的编码技能,本博客主要记录自己用 Python 在闯关时的做题思路和实现代码,同时也学习学习其他大神写的代码。

CheckiO 官网:https://checkio.org/

我的 CheckiO 主页:https://py.checkio.org/user/TRHX/

CheckiO 题解系列专栏:https://itrhx.blog.csdn.net/category_9536424.html

CheckiO 所有题解源代码:https://github.com/TRHX/Python-CheckiO-Exercise


题目描述

【All the Same】:检查给定的列表,判断是否其中所有的元素都相等

【链接】https://py.checkio.org/mission/all-the-same/

【输入】:列表(List)

【输出】:布尔值(Bool),True 或者 False

【范例】

all_the_same([1, 1, 1]) == True
all_the_same([1, 2, 1]) == False
all_the_same(['a', 'a', 'a']) == True
all_the_same([]) == True

解题思路

利用 set() 函数删除重复数据,如果其长度小于等于1,返回 True,否则返回 False。

代码实现

from typing import List, Any


def all_the_same(elements: List[Any]) -> bool:
    if len(set(elements)) <= 1:
        return True
    else:
        return False


if __name__ == '__main__':
    print("Example:")
    print(all_the_same([1, 1, 1]))
    
    # These "asserts" are used for self-checking and not for an auto-testing
    assert all_the_same([1, 1, 1]) == True
    assert all_the_same([1, 2, 1]) == False
    assert all_the_same(['a', 'a', 'a']) == True
    assert all_the_same([]) == True
    assert all_the_same([1]) == True
    print("Coding complete? Click 'Check' to earn cool rewards!")

大神解答

大神解答 NO.1

def all_the_same(elements):
   return elements[1:] == elements[:-1]

大神解答 NO.2

def all_the_same(elements):
    return len(elements) < 1 or len(elements) == elements.count(elementse[0])
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 数字20 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读