Konzept: Funktionen und Code-Blöcke#
Funktionen und Dekoratoren#
Im letzten Kapitel haben wir folgenden Code gesehen:
@world.register
def on_setup(self):
world.fps = 1
world.speed = 3
In der zweiten Zeile wird eine Funktion definiert, die bestimmte Anweisungen ausführt (mehr dazu weiter unten).
In der ersten Zeile wird ein Dekorator verwendet. Dieser verknüpft die Funktion mit dem
world
-Objekt. Immer wenn das Systemworld.on_setup
aufrufen möchte, wird stattdessen die von dir definierte Funktion ausgeführt. Auf diese Weise kannst du Funktionen definieren, die auf verschiedene Ereignisse reagieren – etwa Tastendrücke, Kollisionen von Akteuren usw.
Einrückung und Code-Blöcke#
Die Zeilen 3 und 4 im obigen Beispiel sind eingerückt. Das bedeutet, sie gehören zur Funktion und werden beim Aufruf der Funktion ausgeführt.
In Python wird Einrückung verwendet, um Code-Blöcke zu definieren – also wann eine Bedingung oder Funktion beginnt und endet. Alle Zeilen mit gleicher Einrückungsebene gehören zum selben Block.
Coding-Standards – Wie weit sollte man einrücken?#
Die Sprache Python schreibt nicht vor, wie viele Leerzeichen man für die Einrückung verwenden soll — ob 3, 4 oder 5 — aber alle Zeilen eines Blocks müssen gleich weit eingerückt sein.
Allerdings haben sich Python-Entwickler auf bestimmte Coding-Standards geeinigt, damit Code in verschiedenen Projekten einheitlich aussieht.
Die allgemein anerkannte Regel ist, Code mit 4 Leerzeichen einzurücken.
Auch wenn du deinen eigenen Stil verwenden kannst, wird es dringend empfohlen, diesen Standard zu befolgen – besonders bei Teamarbeit.
Funktionen und Konventionen in Python sind in offiziellen Vorschlägen dokumentiert, den sogenannten PEPs (Python Enhancement Proposals). Stil-Empfehlungen findest du in PEP 8.
Neben Einrückung behandelt es viele weitere Themen — zum Beispiel:
a = a + 3 # Recommended
anstatt:
a=a+3 # Less readable
Auch wenn Python diese Regeln nicht erzwingt, hilft ihre Einhaltung, deinen Code für andere besser lesbar zu machen.
Hilfreiche Werkzeuge#
Die meisten modernen Code-Editoren unterstützen:
Automatische Formatierung (z. B. automatische Einrückung)
Linting (Überprüfung des Codes auf Stilprobleme)
Diese Werkzeuge helfen dir, sauberen und lesbaren Code leichter zu schreiben.