如果列表长度未知(Python),如何识别列表中的所有数字是相同还是不同?

时间:2016-02-02 15:10:28

标签: python

我正在使用Python而我正在试图弄清楚如何确定列表中的所有数字是相同还是不同(即使只有一个整数不同)如果事先我不知道总数列表中的元素。最初我写了类似的东西:

def equalOrNot(lst):
    if sum(lst)%len(lst)==0:
         return False
    else:
         return True

但它并不适用于所有情况。有什么建议? 感谢

4 个答案:

答案 0 :(得分:7)

使用set

if len(set(lst)) == 1: 

答案 1 :(得分:2)

不确定。您可以使用内置all()

all(numbers[0] == number for number in numbers)

答案 2 :(得分:1)

使用此:

def equalOrNot(lst):
    for item in lst[1:]:
        if item != lst[0]:
            return False

    return True

或者只是这样做:

lst[::-1] == sorted(lst)

答案 3 :(得分:1)

if lst.count(lst[0]) == len(lst):

if lst.reverse() == lst.sort():