bool()是python的内置函数
- 参数如果缺省,则返回False
>>> bool()
False
- 传入布尔类型,按原值返回
>>> bool(True)
True
>>> bool(False)
False
- 传入字符串,空字符串返回False,否则返回True
>>> bool('')
False
>>> bool('0')
True
- 传入数值时,0值返回False,否则返回True
>>> bool(0)
False
>>> bool(0.0)
False
>>> bool(1)
True
>>> bool(-1.0)
True
>>> bool(+0) # 传入正0或者负0,结果还是False
False
>>> bool(-0)
False
>>> from decimal import Decimal
>>> bool(Decimal(0))
False
>>> bool(Decimal(0.0))
False
>>> bool(Decimal('0'))
False
>>> bool(Decimal('0.0'))
False
- 传入元组,列表,字典等对象时,元素个数为空返回False, 否则返回True
>>> bool(()) #空元组
False
>>> bool((0,)) #非空元组
True
>>> bool([]) #空列表
False
>>> bool([0]) #非空列表
True
>>> bool({}) #空字典
False
>>> bool({'k':'v'}) #非空字典
True
Tips:
字符串的’0’,是字符串,但不是空字符串,因此返回bool(‘0’)返回True
注意:
在PHP中 var_dump((bool) ‘0’); 输出 bool(false),所以熟悉PHP的小伙伴要当心PHP和Python的不同之处。
本文详细解析了Python内置函数bool()的使用方法,包括不同类型的输入如何被转换为布尔值,如字符串、数值、集合等,并对比了Python与PHP在处理'0'字符串时的区别。
1万+

被折叠的 条评论
为什么被折叠?



