如何在Python中使用all()函数?我看了网站上的文档,还是不清楚它是如何使用的。
示例:
>>> a = '----'
>>> b = '--e'
>>> all(a) is '-'
False
>> all(b) is not '-'
True
>>> all(a) is not '-'
True
>>> all(b) is '-'
False
我预计上述所有示例的结果都是相反的结果。
比如说,我想编写一个 if 语句来检查所有 char 是否为 some_str 为“-”。如果 some_str 包含所有“-”,则返回打印语句“所有破折号”
some_str = '-------'
if all(some_str) is '-':
print("all dashes")
elif all(some_str) is not '-':
print("not all dashes")
即使我在 some_str 中添加非“-”,上述示例的结果始终是“并非所有破折号”
如何使上述 if 和 elif 语句起作用?
最佳答案
all
需要一个可迭代对象,所以我们给它一个:
>>> all(c=='-' for c in '-------')
True
>>> all(c=='-' for c in '------x')
False
all(...)
始终为 True
或 False
,绝不会为 "-"
,这就是为什么你的例子无法工作。
关于python - all()函数的正确使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22976642/