【发布时间】:2016-06-08 06:40:34
【问题描述】:
我知道当可迭代对象的所有元素都为真时,内置的all() 函数会返回真。但是当我创建一个元组并给它 2 个随机整数作为元素时,它返回 true。这是为什么?
例如:
tup = 1234 , 5678
并在其上调用all() 函数:
print ( all(t) )
>>> True
我很困惑,因为我认为 python 只能在执行布尔运算时返回 true 或 false。
但是我没有进行布尔运算,我只给了all() 2 个整数。我没有说例如2>= 1。那么为什么all() 为我的元组返回true?还是这只是默认答案?
【问题讨论】:
-
bool(a)对于除0之外的所有整数a计算为True -
而不是
True,想想truthy(对于这意味着什么的常见Python定义)。
标签: python python-3.x