布爾只有兩個值:0,1
1或0
真或假
下面的值在作為布爾表達式的時候,會被解釋器看作假(false)
False None 0 "" () [] {}
換句話說,也就是標准值False和None,所有類型的數字0(包括浮點型,長整型和其他類型),空序列(比如空字符串、元組和列表)以及空的字典都為假。其他的一切都被解釋為真,包括特殊值True.
也就是說Python中的所有值都能被解釋為真值。”標准的“布爾值為True和False。事實上,True和False只不過是1和0的一種“華麗”的說法而已----看起來不同,但是作用相同。
布爾值True和False屬於布爾類型,bool函數可以用來(和list、str以及tuple一樣)轉換其他值。
因為所有值都可以用作布爾值,所以幾乎不需要對他們進行顯式轉換。(可以說Python會自動轉換這些值)
注意:
盡管說 [] 和 “” 都是假值(也就是說bool([])) == bool("")==False ) ,他們本身卻不並不相等(也就是說[ ] != " ")。對於其他不同類型的假值對象也是如此,例如 ()! = False