Dlaczego True i False zostały zmienione na słowa kluczowe w Pythonie 3

W Pythonie 2 możemy zmienić przypisanieTrue iFalse (ale nieNone), ale wszystkie trzy (True, False, iNone) uznano za zmienne wbudowane. Jednak w Py3k wszystkie trzy zostały zmienione na słowa kluczowe wedługdoktorzy.

Z moich własnych spekulacji mogłem tylko zgadywać, że chodziło o zapobieganie takim zjawiskomto które pochodzą od staregoTrue, False = False, True wybryk. Jednak w Pythonie 2.7.5, a może i wcześniej, instrukcje takie jakNone = 3 który został ponownie przydzielonyNone podniesionySyntaxError: cannot assign to None.

Semantycznie, nie wierzęTrue, False, iNone są słowami kluczowymi, ponieważ są w końcu semantycznie dosłowne, co uczyniła Java. Sprawdziłem PEP 0 (indeks) i nie mogłem znaleźć PEP wyjaśniającego, dlaczego zostały zmienione.

Czy istnieją korzyści związane z wydajnością lub inne powody, dla których stają się one słowami kluczowymi, w przeciwieństwie do literałów lub ich specjalnych obudówNone w python2?

questionAnswers(3)

yourAnswerToTheQuestion