Warum wurden in Python 3 "Richtig" und "Falsch" in "Schlüsselwörter" geändert?
In Python 2 konnten wir neu zuweisenTrue
undFalse
(aber nichtNone
), aber alle drei (True
, False
, undNone
) wurden als eingebaute Variablen angesehen. In Py3k wurden jedoch alle drei in Stichwörter gemäß geändertdie docs.
Nach meinen eigenen Spekulationen konnte ich nur vermuten, dass es sich um eine Verhinderung von Spielereien handeltediese die aus dem alten ableitenTrue, False = False, True
Streich. In Python 2.7.5 und möglicherweise zuvor wurden jedoch Anweisungen wieNone = 3
die neu zugewiesenNone
angehobenSyntaxError: cannot assign to None
.
Semantisch glaube ich nichtTrue
, False
, undNone
sind Schlüsselwörter, da es sich letztendlich um semantische Literale handelt, wie es Java getan hat. Ich habe PEP 0 (den Index) überprüft und konnte keinen PEP finden, der erklärt, warum sie geändert wurden.
Gibt es Leistungsvorteile oder andere Gründe für die Erstellung von Schlüsselwörtern im Gegensatz zu Literalen oder besonderen Schreibweisen?None
in python2?