Die Einrückung ist der Abstand am Zeilenanfang, der sichtbar macht, was zu was gehört. In den meisten Sprachen dient sie allein dem Lesen; in einigen ist sie Teil der Syntax und entscheidet über die Bedeutung.
- Einrückung
Der Abstand am Zeilenanfang, der die Verschachtelung von Quelltext sichtbar macht.
Beispiel: „Nach dem Einfügen stimmte die Einrückung nicht mehr, und die Schleife lief einen Schritt zu oft.“In Python ersetzt sie die Klammern, mit denen andere Sprachen Blöcke abgrenzen.
Geprüft und vereinheitlicht wird sie von einem Linter oder einem Code-Formatierer.
Wofür die Einrückung gebraucht wird
Um die Schachtelung zu zeigen. Eine Bedingung innerhalb einer Schleife innerhalb einer Funktion ist als Text eine Folge von Zeilen; erst der Abstand macht daraus eine sichtbare Ordnung.
Deshalb ist sie keine Geschmacksfrage, auch wo sie nicht erzwungen wird. Quelltext mit falscher Einrückung behauptet eine Struktur, die es nicht gibt, und das ist schlimmer als gar keine.
def rabatt(betrag, kunde):
if kunde.ist_stammkunde:
if betrag > 100:
return betrag * 0.9
return betragWo die Einrückung Teil der Sprache ist
Dort, wo sie die Klammern ersetzt. Dann ändert eine verschobene Zeile das Programm, ohne dass ein Zeichen dazukommt oder wegfällt, und der Fehler ist beim Lesen kaum zu sehen.
Das erzwingt Sauberkeit und bestraft Unachtsamkeit. Besonders beim Zusammenführen von Änderungen aus zwei Quellen entstehen so Fehler, die in anderen Sprachen nicht möglich wären.
Warum die Einrückung Streit auslöst
Weil zwei Fragen offen sind: Tabulatoren oder Leerzeichen, und wie viele. Beide lassen sich nicht sachlich entscheiden; beide Antworten funktionieren, solange sie im Projekt einheitlich sind.
Deshalb wird sie heute meist der Werkzeugkette überlassen. Ein Formatierer schreibt den Quelltext beim Speichern um, und die Frage stellt sich im Alltag nicht mehr.