Strings in Python – Grundlagen

Strings in Python - Was ist das? Wie erstelle ich Strings? | Python Grundlagen

Was sind Strings?

Strings sind Zeichenketten, das bedeutet im Klartext aneinandergereihte Buchstaben und/oder Zahlen, die von der Programmiersprache als Text interpretiert werden. Das bedeutet mit Strings, auch dann wenn sie Zahlen enthalten, kann man keine mathematischen Berechnungen durchführen, aber wir können sie textlich manipulieren, zum Beispiel durch das Verbinden mehrerer Strings.

Wie erstellt man Strings in Python?

Um einen String in Python zu erstellen schreibt man den gewünschten Text innerhalb von einfachen oder doppelten, hochgestellten Anführungszeichen.

'Hallo, das ist ein String'
"Hallo, das ist ein String"

Beide diese Strings sind im Prinzip identisch und gültig. Man sollte sich dennoch im Idealfall auf eine Art von Anführungszeichen festlegen und diese dann konsequent verwenden und nicht abwechseln. Das vermeidet Verwirrung und macht den Code lesbarer.

Ich persönlich verwende gerne die einfachen Anführungszeichen. Das hat den Grund, dass man dann innerhalb des Strings ohne Probleme doppelte Anführungszeichen verwenden kann. Da die doppelten bei uns im deutschsprachigen Raum eigentlich für Texte Standard sind ist das praktisch.

'Hallo, in diesem String kann ich etwas "zitieren", ohne dass der String durch das doppelte Anführungszeichen unterbrochen wird'

Einen String einer Variable zuweisen und ausgeben

Strings können in Python einfach einer Variable zugewiesen werden. Außerdem können wir mit der print()-Funktion Strings entweder direkt oder über den Variablennamen ausgeben. Wenn wir einen String direkt ausgeben möchten, benötigen wir die Anführungszeichen. Wenn wir den Variablennamen verwenden, wird dieser einfach direkt an die print()-Funktion übergeben.

# Zuweisung eines Strings an eine Variable
hallo = 'Hallo, Johannes'

# Direkte Ausgabe eines Strings mit print()
print('Hallo, Johannes')

# Ausgabe eines Strings über die Variable
print(hallo)

Mehrzeilige Strings erstellen

Für sehr lange Strings, die an bestimmten Stellen umgebrochen werden sollen, kann man in Python mehrzeilige Strings erstellen. Dazu werden zu Beginn und am Ende drei Anführungszeichen geschrieben. Auch hier ist wieder egal, ob doppelte oder einfache Anführungszeichen.

# Mehrzeiliger String mit einfachen Anführungszeichen
text1 = '''Das ist ein langer String.
Die Zeilenumbrüche werden genau dort gemacht,
wo sie im Code auch geschrieben werden'''

# Mehrzeiliger String mit doppelten Anführungszeichen
text1 = """Das ist ein langer String.
Die Zeilenumbrüche werden genau dort gemacht,
wo sie im Code auch geschrieben werden"""

Strings verbinden

Mit dem Plus-Operator (+) kann man in Python zwei oder mehrere Strings verbinden. Es wird aus den einzelnen String dann ein neuer String erstellt, der alle Bestandteile enthält.

vorname = 'Johannes'
nachname = 'Ruof'

ganzerName = vorname + ' ' + nachname
print(ganzerName)
Johannes Ruof

Die Variable ganzerName enthält jetzt den Wert Johannes Ruof. Die beiden Stringvariablen vorname und nachname werden dadurch nicht beeinflusst und bestehen weiter wie bisher. Beim Zusammenfügen der Strings werden keine automatischen Leerzeichen eingefügt. Das bedeutet, dass manuell ein String, der nur ein Leerzeichen enthält dazwischen addiert werden muss. Andernfalls wäre das Ergebnis JohannesRuof.

Illegale Zeichen maskieren um sie im String zu verwenden

Es gibt ein paar illegale Zeichen, die normalerweise nicht in Strings verwendet werden können. Man kann diese aber maskieren. Dieses Vorgehen nennt man "Escapen" und es erlaubt uns auch in einem String beispielsweise weitere Anführungszeichen zu verwenden, ohne dass der String dadurch unterbrochen wird. Für das Maskieren benutzt man in Python den Backslash (\).

hallo = "Das ist ein String, in dem ich die \"Anführungszeichen\" maskiere und dadurch verwenden kann."

Bei den Anführungszeichen müssen natürlich nur diejenigen escaped werden, die für den String verwendet werden. Die jeweils anderen Anführungszeichen (einfach oder doppelt) kann man einfach so im String verwenden.

In der folgenden Tabelle sind die wichtigsten Escape-Befehle für Python Strings zusammengefasst.

Escape-ZeichenErgebnis im String
\'Einfaches Anführungszeichen
\"Doppeltes Anführungszeichen
\\Backslash
\nZeilenumbruch
\tTab
Tabelle 1 – Escape Zeichen in Python