Python中判断所有元素都为True——all()函数

[快速理解]
对于all([a,b,c]):只有a、b、c都是True,则结果为True

选择题
以下语句的运行结果是
print(all((1,0,None)),all([None,0]),all({1,True}))
A True True False 
B False False True
C False True True
D False False False

问题解析
这道题考察了Python中的利用all()函数判断可迭代对象中各元素的逻辑值。
1.all(myItems)函数用于判断给定的可迭代参数中的所有元素是否都为 True,如果是返回 True,否则返回 False。
2.all(myItems)中的可迭代参数myItems只能有1个,例如myItems可以是一个元组、列表或者集合,如果填入多个参数则会报错,例如:all(a,b,c)就会报错。
3.all()函数等价于:
def all(myItems):
    for eachItem in myItems:
        if eachItem==False:
            return False
    return True
4.Python中可以用bool()函数返回一个对象的布尔值,以下类型元素会被认为是False:
4.1 为0的数字,包括0,0.0
4.2 空字符串,包括'', ""
4.3 None
4.4 空元组(),空列表[],空集合{}
4.5 其他的值都认为是True。
5.题目中用all()函数分别判断了三个可迭代参数:
(1,0,None)是一个元组,其中元素1是True,0和None不是True,所以函数返回False;
[None,0]是一个列表,其中元素None和0不是True,所以函数返回False;
{1,True}是一个集合,其中元素1,True都是True,所以函数返回True。
所以,按照顺序输出函数的返回结果,应为False False True。

欢迎大家转发,一起传播知识和正能量,帮助到更多人。期待大家提出宝贵改进建议,互相交流,收获更大。辛苦大家转发时注明出处(也是咱们公益编程交流群的入口网址),刘经纬老师共享知识相关文件下载地址为:http://liujingwei.cn

答案与运行结果
正确答案是:B
图片:

温馨期待
期待大家提出宝贵建议,互相交流,收获更大

猜你喜欢

转载自blog.csdn.net/liujingwei8610/article/details/121868517