HOWTO · Python

Namenskonvention für Funktionen, Klassen, Konstanten und Variablen in Python

Lernen Sie die Python-Namenskonventionen für Funktionen, Klassen, Konstanten und Variablen kennen, mit klaren Beispielen auf der Grundlage von PEP 8.

Auf dieser Seite

Python-Namenskonventionen machen Code leichter lesbar und wartbar. PEP 8 ist der Styleguide für Python; seine Konventionen sind Empfehlungen und keine Regeln, die von der Sprache erzwungen werden. Verwenden Sie sie als einheitlichen Ausgangspunkt und folgen Sie der etablierten Schreibweise eines Projekts, wenn sie davon abweicht. Die PEP-8-Namenskonventionen enthalten die zugrunde liegenden Empfehlungen.

Namenskonventionen für Funktionen

Funktionsnamen bestehen aus kleingeschriebenen Wörtern, die durch Unterstriche getrennt sind. Dieser Stil heißt snake_case; ein Name wie calculate_area beschreibt die Aktion und lässt sich schnell erfassen. Wählen Sie Namen, die erkennen lassen, was die Funktion tut.

Die folgende Funktion berechnet die Fläche eines Rechtecks und gibt sie aus:

def calculate_area(length, width):
    return length * width

area = calculate_area(5, 3)
print(area)

Ausgabe:

15

Der Funktionsname enthält ein Verb, und die Parameter beschreiben die angenommenen Werte. Beim Aufruf werden eine Länge von 5 und eine Breite von 3 übergeben; die zurückgegebene Fläche beträgt daher 15.

Python-Bezeichner unterscheiden Groß- und Kleinschreibung. calculate_area und Calculate_Area sind also unterschiedliche Namen. Ein Name darf Buchstaben, Ziffern und Unterstriche enthalten, aber nicht mit einer Ziffer beginnen. Halten Sie Namen lesbar, statt zusätzliche Details aufzunehmen, die bereits aus dem Funktionskörper oder dem umgebenden Code hervorgehen. Ein einzelner führender Unterstrich, wie in _parse_record, signalisiert, dass ein Name für die interne Verwendung gedacht ist; er macht den Namen weder unzugänglich noch privat. Weicht das umgebende Projekt davon ab, folgen Sie dessen Konventionen.

Namenskonventionen für Klassen

Verwenden Sie für Klassennamen CapWords: Schreiben Sie den Anfangsbuchstaben jedes Wortes groß und trennen Sie die Wörter nicht durch Unterstriche. Dieser Stil wird häufig auch PascalCase genannt. So unterscheidet sich eine Klasse wie Car von einem Funktions- oder Variablennamen.

class Car:
    def __init__(self, make, model):
        self.make = make
        self.model = model

my_car = Car("Toyota", "Corolla")
print(my_car.make, my_car.model)

Ausgabe:

Toyota Corolla

Hier bezeichnet Car die Klasse, während my_car der kleingeschriebenen, durch Unterstriche getrennten Schreibweise für Variablen folgt. Der Initialisierer speichert die übergebenen Angaben zu Marke und Modell im neuen Objekt.

Namenskonventionen für Konstanten

Schreiben Sie Konstanten üblicherweise auf Modulebene als großgeschriebene Wörter, die durch Unterstriche getrennt sind. MAX_RETRIES signalisiert zum Beispiel einen Wert, der stabil bleiben soll. Die Großschreibung ist lediglich eine Konvention: Python macht einen Wert nicht unveränderlich, nur weil sein Name großgeschrieben ist. Vermeiden Sie daher, ihn gemäß der üblichen Vereinbarung erneut zuzuweisen.

PI = 3.14159

def calculate_circle_area(radius):
    return PI * (radius ** 2)

area = calculate_circle_area(5)
print(area)

Ausgabe:

78.53975

Der Name der Konstanten macht ihre vorgesehene Rolle deutlich; die Funktion verwendet sie, um die Fläche des Kreises zu berechnen.

Namenskonventionen für Variablen

Verwenden Sie für Variablen wie für Funktionen kleingeschriebene Wörter, die durch Unterstriche getrennt sind. Bevorzugen Sie einen aussagekräftigen Namen wie user_age gegenüber einem vagen Namen wie x. Wie ausführlich der Name sein sollte, hängt davon ab, wie viel Kontext der umgebende Code bietet.

user_age = 30
def display_age(age):
    print(f"The user is {age} years old.")

display_age(user_age)

Ausgabe:

The user is 30 years old.

user_age beschreibt den gespeicherten Wert, und age ist als Parameter in der kurzen Funktion eindeutig. Einheitliche Namen helfen dabei, nachzuvollziehen, wie Werte durch ein Programm fließen. Python erzwingt diese Namensstile nicht. Verwenden Sie die Konventionen daher einheitlich und passen Sie sie an den Stil Ihres Projekts an.