據我所知,我總是記得布爾值true爲「0」,false爲「1」。 但來到蟒蛇的時候,True和False的實際值是什麼?他們是否真的根據語言改變?
如果(0): 打印( 「真」)
輸出是 無
誰能告訴我究竟是什麼值?
據我所知,我總是記得布爾值true爲「0」,false爲「1」。 但來到蟒蛇的時候,True和False的實際值是什麼?他們是否真的根據語言改變?
如果(0): 打印( 「真」)
輸出是 無
誰能告訴我究竟是什麼值?
您可以在控制檯中運行它...:
In [1]: True == 1
Out[1]: True
In [2]: False == 0
Out[2]: True
或
In [1]: int(True)
Out[1]: 1
In [2]: int(False)
Out[2]: 0
在大多數語言真或假被映射爲1和0分別情況下,他們支持他們鑄造。 Python是其中的一種語言(其他則是例如PHP,Ruby等)。某些語言(如Haskell或其他語言)會將它們定義爲不能被鑄造的獨立值,因此您不應該依賴基礎表示。
您可以通過鑄造或True
測試False
這int
$ python
> int(True)
1
> int(False)
0
你的0是真實的想法很可能是來自C/C++。 C最初沒有boolean
值。因此人們返回整數。這些整數也編碼錯誤值。爲了有多個錯誤值,你會說0是「一切正常」(=真),1或以上是不同的錯誤值。請注意,這些約定支持兩種以上的狀態(與布爾值不同)。
非常感謝你,這是我非常需要的信息 –
@VijayVj如果一個答案足以滿足你的需求,請記住標記爲這樣。 – somnium