2.2.5. Zeichenketten#

Darstellung#

Für die menschliche Interaktion mit einem Programm wird eine textbasierte Aus- und Eingabe benötigt. Zur Speicherung von Text bzw. der Folge von Zeichen werden Zeichenketten, Datentyp string, verwendet. Zeichenketten werden mit Hilfe von Anführungszeichen " oder ' dargestellt. Druckbare Zeichen können direkt verwendet werden, wobei nicht-druckbare Zeichen durch einen Kombination von einem Maskierungszeichen \ und einem druckbaren Zeichen kodiert werden.

print( "Hallo Welt!" )
Hallo Welt!
satz = 'Dies ist ein einfacher Satz.'
print( satz )
Dies ist ein einfacher Satz.

Nicht-druckbare Zeichen für z.B. neue Zeile oder Tabulator sind \n (ASCII LF) und \t (ASCII TAB). Da bei Zeichenketten die ASCII-Zeichen ", ' und \ eine Sonderrolle einnehmen, muss für deren Verwendung auch das Maskierungszeichen verwendet werden. Eine Darstellung dieser drei Zeichen erfolgt entsprchend mit \", \' und \\.

neuer_satz = "\'Addition\' \\ \'Subtraktion\' sind Grundrechenarten."
print( neuer_satz )
'Addition' \ 'Subtraktion' sind Grundrechenarten.
mehrere_absaetze = "Erste Zeile,\nzweite Zeile, und\n\tletzte Zeile mit einer Einrückung."
print( mehrere_absaetze )
Erste Zeile,
zweite Zeile, und
	letzte Zeile mit einer Einrückung.

Auch eine leere Zeichenkette kann erzeugt werden:

leerer_string = ''
print( leerer_string )

Operationen#

Mit Zeichenketten können auch Operationen durchgeführt werden. Dazu gehört die Summation, d.h. Verbindung von Zeichenketten, die Multiplikation mit einer ganzen Zahl oder Vergleichsoperationen.

wort_a = "Feuer"
wort_b = "Computer"
print( wort_a, wort_b )

satz = wort_a + ' und ' + wort_b
print( satz )
Feuer Computer
Feuer und Computer
mehrfach_wort_a = 3 * wort_a
print( "erste ausgabe:  ", mehrfach_wort_a )

mehrfach_wort_a = 3 * (wort_a + ', ') + wort_a + '!'
print( "zweite ausgabe: ", mehrfach_wort_a )
erste ausgabe:   FeuerFeuerFeuer
zweite ausgabe:  Feuer, Feuer, Feuer, Feuer!
print( wort_a > wort_b )
True

Zugriff auf einzelne Zeichen#

Der Zugriff auf einzelne Zeichen wird durch den [] Operator ermöglicht. Hierbei wird der Index des Zielzeichens in die Klammern gesetzt. Dabei fängt der Index bei Null an und der letzte Index einer Zeichenkette mit der Länge n ist n-1.

alphabet = 'ABCDEFGH ...'
print( 'Anfang des Alphabets: ', alphabet )
print( 'Erster Buchstabe:     ', alphabet[0] )
print( 'Vierter Buchstabe:    ', alphabet[3] )
Anfang des Alphabets:  ABCDEFGH ...
Erster Buchstabe:      A
Vierter Buchstabe:     D