我發現下面的構造今天別人的代碼:定義的確,如果沒有定義,導致語法錯誤
try: True, False
except NameError: True = 1==1; False = 1==0
據我瞭解這一點,它定義True
和False
如果它們尚未確定。所以如果他們被定義,它不應該拋出NameError
-Exception,對吧?
我在一個shell tryed這對我自己和它表明我SyntaxError: can't assign to keyword
我的問題是爲什麼,如果真和假的定義甚至開槍語法錯誤?如果True和False在我的系統上可用,它不應該超過異常處理並且不顯示語法錯誤嗎?
這些行使得代碼與python 2.3之前的版本兼容。 (請參閱[PEP 285](https://www.python.org/dev/peps/pep-0285/))。但是* nobody *使用python <2.3,甚至python <2.5真的很少見。目前您最好嘗試使代碼可移植到python2.7/3 + – Bakuriu
http://2ndscale.com/rtomayko/2003/TrueFalseInOldPython – 101