在Python 中,通常的做法是將False 和True 布林值與整數0 相關聯1. 然而,這種對應關係是由語言保證的,還是僅僅是一個將來可能會改變的實作細節版本?
在 Python 2.x 中,True 和 False 沒有明確定義為關鍵字,它們的值可以重新分配。然而,即使在這種情況下,比較仍然會傳回正確的 True 和 False 值。
在 Python 3.x 中,True 和 False 被正式定義為關鍵字。這保證了它們的值始終分別等於 1 和 0。
Python 中布林值和整數之間等價的基礎是 bool 繼承自 int。這種繼承關係確保布林值可以在需要整數的上下文中使用,例如列表索引。
Python 文件明確指出布林值繼承自整數:
object | int | bool
文件也闡明了布林值在幾乎所有上下文中的行為都類似於整數0 和1,除非轉換為
根據文件和Python目前的實現,可以安全地假設 False 和 True 將始終分別等於 0 和 1。但是,如果 Python 4 對整數繼承層次結構引入重大更改,則此假設可能不再有效。
以上是Python 是否保證「False」和「True」總是等於 0 和 1?的詳細內容。更多資訊請關注PHP中文網其他相關文章!