Zeichenketten
Zeichenketten werden mit einfachen '
oder doppelten "
oder dreifach-doppelten """
Anführungsstrichen abgegrenzt. Letztere Variante erlaubt es, mehrzeilige Zeichenketten zu schreiben:
Beispiel
"Hallo Welt"
'Hallo Welt'
""" Hallo
liebe
Welt"""
Eine Mischung der Anführungszeichen zur Abtrennung ist nicht zulässig, sehr wohl aber deren Vorkommen in einem durch anderen Anführungszeichen abgetrennten Text:
Beispiel
"Can't touch this"
'Dann sagte er "Heureka!".'
Wenn aber beide Zeichen '
und "
vorkommen sollen, dann müssen die Vorkommen der äußeren Anführungsstriche in der Zeichenkette selbst durch Voranstellen von \
maskiert werden:
Beispiel
'Dann sagte er "Can\'t touch this".'
Zwei Zeichenketten lassen sich verbinden:
Beispiel
"Wer A sagt " + "kann sich irren." # "Wer A sagt kann sich irren."
Mit einer definierten Addition ist natürlich auch eine Multiplikation definiert:
Beispiel
"Na" * 12 + " Batman!" # 'NaNaNaNaNaNaNaNaNaNaNaNa Batman!'
Hat man eine Liste an Zeichenketten, kann man die über die Funktion str.join verbinden:
Beispiel
",".join(["Montag", "Dienstag"]) # 'Montag,Dienstag'
"-...-".join(["Montag", "Dienstag", "Mittwoch"]) # 'Montag-...-Dienstag-...-Mittwoch'
Teile einer Zeichenkette können über die Indizierung [a:b]
erhalten werden. Dabei ist a
das erste Zeichen, das extrahiert werden soll und b
das erste Zeichen, das nicht mehr enthalten sein soll. In Python beginnt die Zählung bei 0.
Beispiel
"Erblasser"[2:7] # 'blass'
Einzelne Buchstaben können so auch extrahiert werden, negative Indizes zählen von hinten:
Beispiel
"Teil"[0] # 'T'
"Teil"[-1] # 'l'
"Teil"[-3:-1] # 'ei'
Wird eine der Grenzen in [a:b]
weggelassen, wird für a
0 angenommen und für b
-1. Das ist eine generelle Konvention in Python über die Zeichenketten hinaus.
Beispiel
"Teil"[1:] # 'eil'
"Teil"[-1] # 'l'
"Teil"[:-2] # 'Te'
Konvertierung
Die Konvertierung ist einfach aber nicht immer offensichtlich:
Beispiel
str(2) # '2'
str(1/9*9) # '1.0', weil 1/9 als Dezimalzahl evaluiert wurde
str(1) # '1'
str(1/9) # '0.1111111111111111'