我有一个整数列表,让我们说myList
。当每个项目都等于一个时,我想做点什么。我们的想法是优化这种代码:
if myList[0] == 1 and myList[1] == 1 and ... :
do something
答案 0 :(得分:2)
使用内置的all
功能:
if all(item == 1 for item in myList):
do_something()
这很有效,因为只要item == 1
条件失败,它就会停止测试。
FWIW,你可以这样做:
if all(map((1).__eq__, myList)):
do_something()
然而,第一种方式更好阅读。它通常被认为是不好的打电话" dunder"像__eq__
这样的方法。
答案 1 :(得分:0)
使用all
:
if all(x == 1 for x in myList):
...