Python 2.2 – Text

Im Folgenden wollen wir besprechen, wie man Text in Variablen speichert und wie man Text manipuliert.

Texte in Python

Text wird in Python im Datentyp String abgespeichert. Seit Version 3 von Python sind alle Strings unicode-8 codiert. Das heißt für dich, dass es keinerlei Probleme mit deutschen Sonderzeichen (ß, ä, ö, ü) gibt, wie es noch in früheren Versionen von Python der Fall war. Eine String-Variable zu definieren ist denkbar einfach. Wir haben bereits mehrfach gesehen, wie das geht.

Code-Beispiel - Stringvariable definieren:

text = "Willkommen im Dschungel"

Wie wir bereits besprochen haben, sind einfache und doppelte Anführungszeichen in Python äquivalent.

Konkatenation - Verbinden von Strings (Verkettung)

Wir haben bereits gezeigt, wie man zwei Zeichenketten zu einer verbinden kann. Dieses Wissen wollen wir an der Stelle auffrischen.

Code-Beispiel - Zwei Strings verknüpfen

text1 = "Hallo "
text2 = "Welt"
text = text1 + text2

Der Pythoninterpreter erkennt selbstständig, dass es sich hier beim + Operator um den Konkatentationsoperator und nicht um den Operator der Addition handelt. Anders sieht es aus, wenn wir Datentypen mischen.

Code-Beispiel - Häufiger Fehler beim Verketten von verschiedenen Datentypen

text1 = 7
text2 = " Zwerge"
text = text1 + text2

Dieser Code gibt eine Fehlermeldung zurück. Warum?

Du musst hier explizit die Variable text1 vom Typ Integer in eine Variable vom Typ String überführen. Wir verwandeln damit die Zahl in einen String. Dies funktioniert, indem man auf die Variable die Funktion str() ausführt.

Code-Beispiel - Integer-Variable mit str() in String umwandeln

7_text = str(text1)
text2 = " Zwerge"
text = text1 + text2

Jetzt funktioniert die Konkatenation korrekt. Dieses Problem wird dir immer wieder begegnen, wenn du Zahlen und Text kombinieren willst.

Weitere Stringoperationen

Python bietet eine mächtige Standardbibliothek mit vielen Operationen zur Stringmanipulation.

Jede Funktion im Einzelnen zu bespreche,n würde den Rahmen dieser Lektion sprengen. Dennoch möchten wir wenigstens eine weitere Funktion vorstellen.

Die Stringfunktion split()

Die Funktion split teilt einen String anhand eines Trennzeichens (Delimiters) in verschiedene Teile auf. Wie so oft klingt, dies wesentlich komplizierter als es ist, wie wir an folgendem Beispiel sehen werden.

Code-Beispiel split()-Funktion:

text = "Regen"
teile = text.split("g")
print(type(teile))
print(teile[0])
print(teile[1])
Code ausprobieren ×

Wir splitten/teilen das Wort Regen anhand des Delimiters "g" in zwei Teile auf. Dies kann an verschiedensten Stellen sehr nützlich sein. Split wird oft benutzt um Konfigurationsdateien auszulesen oder Text aus HTML Tags zu extrahieren.

Split ist nur ein Beispiel der umfangreichen Textfunktionen, die die Python-Standardbibliothek anbietet.

Code-Aufgabe - Jetzt bist du gefragt:

Deine Aufgabe:

1. Verknüpfe folgende drei Variablen in eine Variable.

  • a = 13
  • b = "Mann"
  • c ="auf des Totenmann’s Kiste"

2. Gib sie anschließend mit dem Print-Befehl aus.

Gib deinen Code hier ein:

Code-Aufgabe - Lösung:

Wenn du nicht weiterkommst, findest du hier die Komplettlösung zu der Aufgabe. Du kannst den folgenden Code in den Online-Editor kopieren & einfügen, um ihn zu testen.

[lp_spoiler title="Spoiler - Lösung anzeigen"]

a = 13
b = " Mann "
c = "auf des Totenmann's Kiste"

abc = str(a) + b + c 

print(abc)
Code ausprobieren ×

[/lp_spoiler]

Zusammenfassung:

In der vorliegenden Lektion haben wir uns ausgiebiger mit dem Datentyp String bzw. Zeichenkette beschäftigt. Wir haben gelernt wie man Strings initialisiert und miteinander verknüpft. Dann haben wir uns noch angesehen, wie man Integerzahlen in Strings umwandelt.

Abschließend haben wir uns noch die Funktion split angesehen, mit der man Strings anhand eines Delimiters teilen kann.

Wir hoffen, du hattest Spaß und wir sehen uns in der nächsten Lektion wieder.