python布爾值
1. 什么是布爾值
但在Python語言中,布爾類型只有兩個值
True
:表示真值
False
:表示假值
請注意,首字母要大寫,不能是其它花式變型。
所有的計算結果,判斷表達式調用返回值是True或者False的過程都可以稱為布爾運算,例如比較運算。
布爾值通常用來判斷條件是否成立。
age = 16
if age >= 18:
print("你是個成年人")
else:
print("你還未成年")
在 Python Shell 的模式下,很容易看出表達式返回的是真值還是假值。
>>> True
True
>>> False
False
>>> 3 > 2
True
>>> 3 > 5
False
>>> 3 in [1,2,3]
True
>>> 3 == 9/3
True
2. 布爾類型的轉換
Python內置的 bool()
函數可以用來測試一個表達式的布爾值結果。
>>> bool(1)
True
>>> bool(0)
False
>>> bool([])
False
>>> bool(())
False
>>> bool({})
False
>>> bool(-1)
True
>>> bool('')
False
>>> bool(None)
False
>>> bool("False")
True
>>> bool("True")
True
>>> bool(0.0)
False
>>> bool(1.0)
True
>>> bool(-0.0)
False
看完上面的例子,可以總結出
下面這些值經過 bool 轉換后是False
:
0、0.0、-0.0
None:這個后面會講到
空字符串、空列表、空元組、空字典
而這些會轉換成True
:
-1、1或者其他非0數值
所有非空字符串,包括 "False"
所有非空字典、非空列表、非空集合,非空元組
3. 布爾運算
布爾類型可以進行 and、or和 not運算。
and 運算是與運算,只有所有都為True,and運算的結果才是True:
>>> True and True
True
>>> True and False
False
>>> False and False
False
>>> 5 > 3 and 3 > 1
True
or運算是或運算,只要其中有一個為True,or運算結果就是True:
>>> True or True
True
>>> True or False
True
>>> False or False
False
>>> 5 > 3 or 1 > 3
True
not運算是非運算,它是單目運算符,把True變成False,False變成True:
>>> not True
False
>>> not False
True
>>> not 1 > 2
True
再開下腦洞,布爾類型還能做別的運算嗎?試試就知道了!
>>> True > False
True
>>> True < False
False
>>> True >=False
True
>>> True -1
0
>>> True + 1
2
>>> True *3
3
>>> False -1
-1
真的可以!比較運算,四則運算都沒有問題。并且在做四則運算的時候,明顯把True看做1,False看做0。往往是我們不知道的細節,有時候給我們帶來巨大的困擾和疑惑。更多的運算種類支持,請大家自行測試。
4. 空值:None
空值不是布爾類型,嚴格的來說放在這里是不合適的,只不過和布爾關系比較緊密。
空值是Python里一個特殊的值,用None表示(首字母大寫)。None不能理解為 0,因為0是整數類型,而None是一個特殊的值。
None不是布爾類型,而是NoneType。
>>> bool(None)
False
>>> type(None)
審核編輯:符乾江
-
布爾
+關注
關注
0文章
3瀏覽量
7486 -
python
+關注
關注
56文章
4797瀏覽量
84721
發布評論請先 登錄
相關推薦
評論