首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >所有列表值都相同

所有列表值都相同
EN

Stack Overflow用户
提问于 2011-01-21 04:37:31
回答 3查看 27.7K关注 0票数 22

在Python中,测试列表中所有值是否相等是一种简单的方法?

EN

回答 3

Stack Overflow用户

发布于 2011-01-21 04:41:11

代码语言:javascript
复制
>>> a = [1, 1, 1, 1]
>>> len(set(a))
1

请注意,此方法假定列表中的每个元素都可以放入一个集合中。某些类型,如可变类型,不能放入一个集中。

票数 13
EN

Stack Overflow用户

发布于 2011-01-21 04:40:25

代码语言:javascript
复制
>>> l = [1, 1, 1, 1]
>>> all(map(lambda x: x == l[0], l))
True
票数 3
EN

Stack Overflow用户

发布于 2011-01-21 04:48:39

正如Greg Hewgill指出的那样,使用set是一个很好的解决方案。这是另一个更懒惰的元素,所以如果有一对元素不相等,则不会比较其余的元素。在比较所有项目时,这可能比set解决方案慢,但没有对其进行基准测试。

代码语言:javascript
复制
l = [1, 1, 1]
all(l[i] == l[i+1] for i in range(len(l)-1))

请注意特殊情况all([]) == True

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4752294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档