7.1 Die Bedeutung von Einrückungen
Manchmal musst du mehrere Befehle zu einer Gruppe zusammenfassen. Eine solche Gruppe nennt man Befehlsblock oder einfach Codeblock. In Python werden Codeblöcke durch Einrückungen definiert, was die Struktur des Programms sauber und lesbar macht.
Im Gegensatz zu vielen anderen Programmiersprachen, in denen Codeblöcke durch Klammern oder Schlüsselwörter gekennzeichnet sind, verwendet Python Einrückungen, um Sequenzen von Anweisungen zu trennen, was als blockartige Struktur bezeichnet wird.
Theoretisch können Einrückungen mit Leerzeichen oder dem Tabulator gemacht werden. Aber PEP 8, der offizielle Style-Guide für Python-Code, empfiehlt 4 Leerzeichen für eine Einrückungsebene zu nutzen. Es ist wichtig, einen einheitlichen Einrückungsstil im gesamten Code zu verwenden.
Struktur der Blöcke:
Ein Codeblock beginnt mit einer Anweisung, gefolgt von
einem Doppelpunkt (z.B. if
,
for
, while
, def
, class
)
und einer Einrückung in der nächsten Zeile.
Alle Anweisungen mit demselben Einrückungsniveau werden als Teil eines Blocks betrachtet.
Die Einrückungen beeinflussen, wie Python den Code interpretiert. Falsche Einrückungen können zu einem IndentationError führen oder die Logik des Programms ändern.
7.2 Gleichbleibende Anzahl von Einrückungen
Es ist sehr wichtig, dass die Codeblöcke die gleiche Anzahl von Einrückungen haben. Deswegen wird stark davon abgeraten, Tabulatoren und Leerzeichen zu mischen. Einige Editoren zeigen den Tabulator als 8 Leerzeichen an, andere als 4. Das kann zu Fehlern führen.
PyCharm löst dieses Problem einfach: es setzt 4 Leerzeichen jedes Mal, wenn du die TAB-Taste auf der Tastatur drückst. Keine Tabulatorzeichen – keine Probleme.
Beispiel:
Falsch | Richtig |
|
|
Wenn es mehrere verschachtelte if-Anweisungen gibt, kannst du sehr leicht einen Fehler machen:
Falsch | Richtig |
|
|
Du musst genau verstehen, zu welchem if
das
else
gehört, sonst riskierst du, die Einrückungen falsch zu setzen und ein Programm zu bekommen, das nicht das tut, was du möchtest.
Besonders oft machen Anfänger diesen Fehler, wenn sie ein vorgefertigtes Stück Code unter ein if
setzen. Oder einen Codeblock von einem Ort zu einem anderen verschieben, wo eine andere Anzahl von Einrückungen erforderlich ist.
Verwende PyCharm: diese IDE kennt diese Probleme gut und fügt automatisch die nötige Anzahl von Einrückungen beim Verschieben von Code hinzu.
GO TO FULL VERSION