如何比较Python中的所有列表项最短

时间:2014-05-05 18:54:22

标签: python

如果所有列表的项目都相同,我希望能够成为:

例如,检查此列表将返回True:

myList = [1,1,1,1,1,1,1] 

检查此列表会导致False:

myList = [2,2,2,2,2,2,1] 

什么是最短的解决方案而不需要声明任何新变量?

1 个答案:

答案 0 :(得分:3)

使用set会删除重复项。然后你可以选择len gth,以获得不同值的数量。

len(set(myList)) <= 1

如果值可以清除,则此方法有效。

但是,如果您希望在长列表中运行此功能并且经常会出现负面答案,那么短路可能会更快:

def is_unique(myList):
   seen = set()
   for x in myList:
       seen.add(x)
       if len(seen) > 1:
          return False
   return True