您好,登錄后才能下訂單哦!
在講條件語句之前,首先應該了解一下布爾(boolean)類型。條件語句(if)需要為其制定布爾值或布爾類型的變量,才能根據條件判斷是否要執行指定代碼塊中的語句。布爾值只有兩個值:True和False,可以將這兩個值翻譯成"真"和"假"或者"1"和"0"。
現在已經了解了布爾值是用來做什么的,但Python語言會將哪些值看作是布爾值呢?其實在Python語言中,每一種類型的值都可以被解釋成布爾類型的值。例如,下面的值都會被解釋成布爾值中的False。
None 0 "" () [] {}
這些值所涉及的數據類型有一些到現在為止并沒有講過(例如,[]表示長度為0的列表),不過也不用擔心,繼續跟我學下去,在后面的章節中會詳細講解這些數據類型。
如果在條件語句中使用上面的這些值,那么條件語句中的條件都會被解釋成False,也就是說,條件代碼塊中的語句不會被執行。
在Python語言底層,會將布爾值True看作1,將布爾值False看作0,盡管從表面上看,True和1、False和0是完全不同的兩個值,但實際上,它們是相同的。可以在Python控制臺驗證這一點。
>>> True == 1
True
>>> False == 0
True
>>> True + False + 20
21
很明顯,可以直接將True看成1,將False看成0,也可以直接將True和False當成1和0用,所以True+False+20的計算結果是21。
另外,可以用bool函數將其他類型的值轉換為布爾類型的值。
>>> bool("")
False
>>> bool("Hello")
True
>>> bool([])
False
>>> bool([1,2,3])
True
>>> bool(20)
True
>>> bool('')
False
可以看到,在前面給出的幾個會被系統認為是False的值,通過bool函數的轉換,會變成真正的布爾值。不過這些值是不能直接和布爾值比較的,例如,不能直接使用"[]==false",正確的做法是先用bool函數將其轉換為布爾值,然后在比較:
bool([]) == false
在前面的代碼中使用了"=="運算符,這是邏輯運算符,是二元運算符,需要指定左右兩個操作數用于判斷兩個值是否相等,如果兩個操作數相等,運算結果為True,否則為False。這個運算符在后面的章節中會經常用到,當然,還有很多類似的運算符,在講解條件語句時會一起介紹。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。