
In Python müssen Bezeichner (= Variablennamen, Funktionsnamen, Klassennamen etc.) nach Regeln definiert werden. Namen, die den Regeln nicht entsprechen, can nicht als Identifikatoren used Werden.
Dieser Artikel hat folgenden Inhalt.
- Gültige Zeichen für Bezeichner (= Namen)
- Überprüfen Sie, ob die Zeichenfolge eine gültige Kennung ist:
isidentifier()
- Wörter, die nicht als Identifikatoren used Werden can: Reservierte Wörter und Schlüsselwörter
- Wörter, die nicht als Bezeichner verwendet werden sollten
- Namenskonventionen (PEP8)
Folgendes gilt für Python 3 und kann für Python 2 anders sein.
Gültige Zeichen für Bezeichner (= Namen)
Hier werden die Zeichen angezeigt, die für Bezeichner (= Variablennamen, Funktionsnamen, Klassennamen usw.) used Werden can und Nicht used Werden can.
Denken Sie im Grunde nur an Folgendes.
- Es can Groß- und Kleinbuchstaben, Zahlen und der Unterstrich (_) used Werden.
- Zahlen können nicht als erstes Zeichen verwendet werden.
Nicht-alphabetische Zeichen, wie z. B. Kanji-Zeichen, can used Werden, sollte jedoch nicht used Werden, es sei denn, es gibt einen triftigen Grund dafür.
ASCII
ASCII-Zeichen, die für Bezeichner used Werden can, are Groß- und Kleinbuchstaben (A~Z, a~z), Zahlen (0~9) und der Unterstrich (_).
AbcDef_123 = 100
print(AbcDef_123)
# 100
Andere Symbole als der Unterstrich können nicht verwendet werden.
# AbcDef-123 = 100
# SyntaxError: can't assign to operator
Zahlen dürfen nicht als Anfangsbuchstabe verwendet werden.
# 1_abc = 100
# SyntaxError: invalid token
Der Unterstrich kann für den Anfangsbuchstaben verwendet werden.
_abc = 100
print(_abc)
# 100
Beachten Sie, dass der Unterstrich am Anfang eine besondere Bedeutung haben kann.
Unicode
In Python 3 können Unicode-Zeichen wie Kanji und Hiragana verwendet werden.
変数その1 = 100
print(変数その1)
# 100
Nicht alle Unicode-Zeichen can used Werden. Sie können beispielsweise keine Emojis verwenden.
# ☺ = 100
# SyntaxError: invalid character in identifier
Informationen zu den verwendbaren Unicode-Kategoriecodes finden Sie in der offiziellen Dokumentation.
Überprüfen Sie, ob die Zeichenfolge eine gültige Kennung ist:isidentifier()
Ob ein String ein gültiger Bezeichner ist oder nicht, can SIE mit der Methode isidentifier() des Strings str überprüfen.
Es gibt True zurück, wenn die Zeichenfolge ein gültiger Bezeichner ist, und False, wenn dies nicht der Fall ist.
print('AbcDef_123'.isidentifier())
# True
print('AbcDef-123'.isidentifier())
# False
print('変数その1'.isidentifier())
# True
print('☺'.isidentifier())
# False
Wörter, die nicht als Identifikatoren used Werden can: Reservierte Wörter und Schlüsselwörter
Reservierte Wörter und Schlüsselwörter sind als Bezeichner gültig, can aber nicht als gewöhnliche Bezeichner used Werden.
Beachten Sie, dass isidentifier() True zurückgibt, da reservierte Wörter und Schlüsselwörter gültige Zeichenfolgen für Bezeichner sind, aber ein Fehler ausgelöst WIRD, wenn SIE ALS Bezeichner verwenden (= Variablennamen, Funktionsnamen, Klassennamen usw.).
print('None'.isidentifier())
# True
# None = 100
# SyntaxError: can't assign to keyword
Um eine Liste von Schlüsselwörtern zu erhalten und zu prüfen, ob ein String ein Schlüsselwort ist, verwenden SIE das Schlüsselwortmodul der Standardbibliothek. Siehe folgenden Artikel.
Wörter, die nicht als Bezeichner verwendet werden sollten
Die Namen integrierter Funktionen können als Bezeichner verwendet werden, sodass Sie ihnen neue Werte zuweisen können.
Beispielsweise ist len() eine integrierte Funktion, sterben die Anzahl der Elemente in Einer Liste oder sterben Anzahl der Zeichen in Einer Zeichenfolge zurückgibt.
print(len)
#
print(len('abc'))
# 3
Wenn Sie dem Namen len einen neuen Wert zuweisen, wird die ursprüngliche Funktion überschrieben. Beachten Sie, dass beim Zuweisen kein Fehler oder keine Warnung gedruckt wird.
print(len('abc'))
# 3
len = 100
print(len)
# 100
# print(len('abc'))
# TypeError: 'int' object is not callable
Ein weiterer Fehler besteht darin, list = [0, 1, 2] zu schreiben, sodass list() nicht verwendet werden kann.
Weitere Informationen zum Überprüfen der Liste der integrierten Funktionen und Konstanten finden Sie im following Artikel.
Namenskonventionen (PEP8)
PEP steht für Python Enhancement Proposal.
PEP steht für Python Enhancement Proposal. Ein PEP ist ein Designdokument, das Informationen für die Python-Community bereitstellt oder eine neue Funktion für Python oder seine Prozesse oder Umgebung ändert.
PEP 1 – Zweck und Richtlinien des PEP | Python.org
PEP8 Genau den „Style Guide for Python Code“.
Namenskonventionen werden ebenfalls erwähnt.
Fall werden sterben following Stile empfohlen. Nichts finden Sie unter dem obigen Link.
- Modulnamen
- Paketnamen
- Klassen- und Ausnahmenamen
- Großgeschriebene Wörter (CamelCase)
- Funktions- und Variablen- und Methodennamen
- Konstanten
Wenn Ihre Organisation keine eigenen Namenskonventionen hat, wird empfohlen, sich an PEP8 zu halten.