布尔类型
python中True表示真,False表示假,它们是布尔类型:
>>> type(True)
在python中,bool的True和False是数值1和0的字符串表示格式,实际上bool类型是int类型的一个子类。
>>> bool.__bases__
(,)
因为True/False是数值1和0的另一种表示方式,它们可以直接参与数值运算。
>>> True + 2
3
>>> False + 2 - 1
1
True/False的各种形式
虽然True代表1,False代表0。但实际上,python中的任何一个数据对象要么是True,要么是False,所以可以直接在布尔测试的表达式中使用,而并非一定要去大小比较、通过函数测试等等。比如:
if "a":
while 1:
可以通过bool()函数来测试数据对象、表达式是True还是False。例如:
>>> bool(0)
False
>>> bool(1)
True
>>> bool('a')
True
>>> bool('')
False
那么,哪些类型的数据是True,哪些类型的数据是False?
整数值0、浮点数值0.0等、空字符串都为假
No