von: Konstantin
aktualisiert: Oct. 15, 2024
In diesem Artikel zeige ich dir, was du bei Zeilenumbrüchen in Python beachten musst, denn Zeilenumbrüche sind ein wichtiger Bestandteil eines sauberen und gut strukturierten Codes. Außerdem zeige ich dir wie du Zeilenumbrüche in Strings einfügst!
Lange Codezeilen können schnell unübersichtlich werden. Deshalb ist es wichtig, sie sinnvoll zu strukturieren und Code auf mehrere Zeilen aufzuteilen. Das verbessert die Lesbarkeit deines Codes. Laut dem offiziellen Style-Guide von Python (PEP-8) sollte die Zeilenlänge auf 79 Zeichen begrenzt sein.
Eine Möglichkeit, um Code aufzuteilen aber dem Interpreter mitzuteilen, dass der Code wie ein Einzeiler gelesen werden soll ist der Backslash ( \
). Setze den Backslash nach dem Operator.
Ergebnis = 10 + 20 + 30 + \
40 + 50 + 60
print(Ergebnis)
# Ausgabe: 210
Als Alternative kannst du den Code über mehrere Zeilen verteilen und anschließend mit Klammern zusammenfassen. Dadurch kannst du dem Python Interpreter mitteilen, dass der Code als Einheit interpretiert werden soll.
Ergebnis = (10 + 20 + 30 +
40 + 50 + 60)
print(Ergebnis)
# Ausgabe: 210
Backslash und Klammern funktionieren natürlich auch bei komplizierterem Code. Schau dir das Beispiel unten genauer an. Hier habe ich zwei Versionen der gleichen Funktion erstellt. Variante 1 funktioniert mit Backslash und Variante 2 funktioniert mit Klammern.
# Variante 1 --> Mit Backslash
def mehrere_bedingungen(alter, einkommen, kredit_score, wohnort, schulden, beruf):
if alter > 25 and einkommen > 50000 and kredit_score > 700 and \
wohnort in ["Stadt A", "Stadt B", "Stadt C"] and schulden < 10000 and \
beruf in ["Ingenieur", "Arzt", "Wissenschaftler"]:
print("Bedingungen erfüllt")
else:
print("Bedingungen nicht erfüllt.")
mehrere_bedingungen(30, 60000, 750, "Stadt A", 5000, "Ingenieur")
# Ausgabe: Bedingungen erfüllt
#--------------------------------------------------------------------------------
# Variante 2 --> Mit Klammern
def mehrere_bedingungen(alter, einkommen, kredit_score, wohnort, schulden, beruf):
if (alter > 25 and einkommen > 50000 and kredit_score > 700 and
wohnort in ["Stadt A", "Stadt B", "Stadt C"] and schulden < 10000 and
beruf in ["Ingenieur", "Arzt", "Wissenschaftler"]):
print("Bedingungen erfüllt")
else:
print("Bedingungen nicht erfüllt.")
mehrere_bedingungen(30, 60000, 750, "Stadt A", 5000, "Ingenieur")
# Ausgabe: Bedingungen erfüllt
In Funktionen nutzt du Klammern, um Argumente an die Funktion zu übergeben. Hier musst du keine gesonderte Klammer setzen und kannst den Code einfach über mehrere Zeilen verteilen.
def funktion(a, b, c, d, e):
return a + b + c + d + e
Ergebnis = funktion(10, 20, 30,
40, 50)
print(Ergebnis)
# Ausgabe: 150
Auch wenn du längere Listen oder Dictionaries initialisierst bietet es sich an, den Code sinnvoll über mehrere Zeilen zu verteilen. Gerade für Dictionaries ist das eigentlich Standard. Hier musst du nichts weiter beachten. Gehe einfach wie im nachfolgenden Beispiel vor.
# Ein Dictionary, dass gut lesbar
# über mehrere Zeilen verteilt wurde
staedte_info = {
"Berlin": "Deutschland",
"Paris": "Frankreich",
"New York": "USA",
"Tokio": "Japan",
"Sydney": "Australien",
"Rio de Janeiro": "Brasilien"
}
Die Lesbarkeit von Strings - insbesondere von sehr langen Strings - kannst du ebenfalls mit gut platzierten Zeilenumbrüchen erhöhen. Damit bleibt deine Eingabe übersichtlich und du musst nicht hin und her scrollen, um den kompletten String zu sehen! Übrigens: Kommentare und Docstrings sollten laut PEP-8 maximal 72 Zeichen lang sein.
Du hast drei Möglichkeiten, um Strings über mehrere Zeilen zu verteilen:
\
)'''
oder """
)Verwendest du den Backslash, so kannst du die Eingabe des Strings auf mehrere Zeilen verteilen, die Ausgabe erfolgt jedoch in einer Zeile:
text = "Dies ist ein langer String, \
der in mehrere Zeilen aufgeteilt wurde."
print(text)
# Ausgabe:
# Dies ist ein langer String, der in mehrere Zeilen aufgeteilt wurde.
Alternativ kannst du Klammern verwenden, um lange Strings zu schreiben und über mehrere Zeilen zu verteilen. Python verbindet automatisch alle Strings, die innerhalb von runden Klammern ()
stehen. Auch in diesem Fall wird der ausgegebene Text in eine Zeile geschrieben. Hinweis: Aus Gründen der Lesbarkeit habe ich ein Stück der Ausgabe gekürzt.
text = ("Dies ist ein langer String, "
"der auf diese Weise in mehrere Zeilen "
"aufgeteilt wurde "
"und vom Python Interpreter "
"automatisch zusammengefügt wird.")
print(text)
# Ausgabe:
# Dies ist ein sehr langer String, der [...] zusammengefügt wird.
Wenn es für dich wichtig ist, dass alle Zeilenumbrüche erhalten bleiben, solltest du auf die letzte Möglichkeit zurückgreifen und dreifache Anführungszeichen verwenden. Hier bleiben alle Zeilenumbrüche erhalten.
text = """Dies ist ein langer String,
der über mehrere Zeilen hinweg geschrieben wurde.
Alle Zeilenumbrüche werden beibehalten."""
print(text)
# Ausgabe:
# Dies ist ein langer String,
# der über mehrere Zeilen hinweg geschrieben wurde.
# Alle Zeilenumbrüche werden beibehalten.
Bis jetzt habe ich dir hauptsächlich erklärt wie du Zeilenumbrüche im Python Code verwendest, um den Code lesbarer zu machen. Zeilenumbrüche sind aber auch wichtig, wenn du Strings oder Text z.B. mit print()
ausgeben willst. Hier verwendest du hauptsächlich das Escape-Zeichen \n
für Zeilenumbrüche (n steht für "new line"). Stell dir \n
einfach wie die Enter-Taste auf der Tastatur vor. Wenn du diesen Code ausführst, siehst du, dass der Text in zwei Zeilen ausgegeben wird:
text = "Das ist eine Zeile.\nUnd das ist eine neue Zeile."
print(text)
# Ausgabe:
Das ist eine Zeile.
Und das ist eine neue Zeile.
Du kannst \n
direkt in einen String schreiben. Es funktioniert auch, wenn du ihn mit anderen Escape-Zeichen kombinierst, z. B. \t
für Tabulatoren. Eine ausführliche Beschreibung aller dieser Escape-Zeichen findest du in meinem Python-Kurs.
Wenn du längere Texte hast, willst du oft Absätze machen. Nutze einfach mehrere \n
hintereinander, um einen Abstand zu erzeugen:
text = "Absatz 1\n\nAbsatz 2"
print(text)
# Ausgabe:
Absatz 1
Absatz 2
Zeilenumbrüche fügst du in Textdateien ebenfalls mit \n
ein. Wenn du die Datei öffnest, siehst du den Text genau so, wie du ihn formatiert hast. Im Beispiel siehst du wie zwei Zeilen und ein Absatz in die Textdatei eingefügt werden:
with open("textdatei.txt", "w") as datei:
datei.write("Zeile1\nZeile2\n\nAbsatz 2")
Wie du weiter oben schon gesehen hast, kannst du auch dreifache Anführungszeichen verwenden, um Zeilenumrüche in Strings einzufügen. Das schöne an dieser Variante: du formatierst den Text bereits bei der Eingabe und kannst auf die \n
Escape-Zeichen verzichten. Damit wird dein String gleich besser lesbar! Schau dir das mal hier an:
text = """Dies ist ein langer String,
der über mehrere Zeilen hinweg geschrieben wurde.
Alle Zeilenumbrüche werden beibehalten.
Auch einen Absatz kannst du so einfügen"""
print(text)
# Ausgabe:
# Dies ist ein langer String,
# der über mehrere Zeilen hinweg geschrieben wurde.
# Alle Zeilenumbrüche werden beibehalten.
#
# Auch einen Absatz kannst du so einfügen
Zeilenumbrüche sind essentiell für eine gute Strukturierung deines Codes und die Formatierung von Strings. Hier nochmal das Wichtigste in Kürze:
\n
um Zeilenumbrüche bei der Ausgabe einzufügen.Gut gesetzte Zeilenumbrüche gehören zu sauberem Code dazu. Willst du wissen, wie du deine Coding-Skills weiter verbesserst, dann schau dir doch meine Blogartikel zu Kommentaren in Python oder Clean Code an. Falls du gerade erst mit dem Programmieren beginnst, ist mein kostenloser Python Kurs für dich vielleicht von Interesse.