Python all()函数详细教程
all()
函数只接受一个可迭代的类型参数;如果该迭代器的所有元素为True
或该迭代器为空,则返回True
,否则返回False
;
在Python中,非0
、非None
、非空的值都为True
;
迭代器包含False
值:
A = range(0,5)
for i in A:
print(i,end=' ')
print(all(A))
输出:
0 1 2 3 4 False
迭代器的值都为True
:
A = range(1,5)
for i in A:
print(i,end=' ')
print(all(A))
输出:
1 2 3 4 True
迭代器为空:
A = range(0)
for i in A:
print(i,end=' ')
print(all(A))
输出:
True
等价函数
all()
函数的实现方法等价于以下函数:
def myall(iterable):
for element in iterable:
if not element:
return False
return True
错误的类型
当向all()
函数传递一个不可迭代的参数时,会造成TypeError
类型错误;
例:
print(all(1))
输出:
Traceback (most recent call last): File "C:\Users\hocn\Desktop\test.py", line 1, in <module> print(all(1)) TypeError: 'int' object is not iterable