諾禾|Python爲什麼要在18年前引入布爾型別?

2020-08-12 14:21:44

概要
本 PEP 提議引入一個新的內建型別bool,它將包含兩個常數False和True。這個 bool 型別是 int 型別的直接子型別(在 C 中),並且在除了 repr() 和 str() 之外的大多數方面,它的值False和True 都將表現得像是 0 和 1(例如,False == 0 和 True == 1 都爲真)。

所有在概念上需返回布爾結果的內建操作,都將更改爲返回 False 或 True,而不再是 0 或 1,例如,比較操作、「not」運算和 isinstance() 之類的斷言方法。

評審
我已經收集了太多太多的反饋意見,因此我宣佈:評審階段(review period)正式結束。 我今天吃的是中國菜,我的籤語餅上寫着:「Strong and bitter words indicate a weak cause.」 它使我想起了一些反對本 PEP 的貼文…