Um Text – genauer gesagt eine Folge von Zeichen – abzuspeichern, verwendet man den Datentyp String, abgekürzt str. Auf Deutsch spricht man von einer Zeichenkette.
Strings muss man speziell kennzeichnen, damit es keine Verwechslungen gibt. Die Anweisungen von Python bestehen ja auch aus Zeichen, eigentlich ist der ganze Code eines Python-Skripts nichts anderes als eine Folge von Zeichen. Deshalb braucht man das doppelte Anführungszeichen " als spezielles Zeichen, um den Beginn und das Ende eines String zu kennzeichnen.
print("Hello World")Länge und einzelne Zeichen
- Länge bestimmen mit
len() - Auf einzelne Zeichen zugreifen mit eckigen Klammern über den index, also die Position in der Kette. Das erste Element hat den index
0!
frucht = input("Bitte tippe den Namen einer Frucht: ")
laenge = len(frucht)
erster_buchstabe = frucht[0]
zweiter_buchstabe = frucht[-1]
print("Welche Frucht beginnt mit", erster_buchstabe + ",")
print("hat dazwischen", laenge-2, "Buchstaben")
print("und endet mit", zweiter_buchstabe + "?")Operatoren
Auch für Text gibt es gewisse Operationen. So können zwei Texte zusammengehängt werden und ein Text kann wiederholt werden:
| Operand | Operation | Bemerkung |
|---|---|---|
+ | Addition | Zusammenhängen |
* | Multiplikation | Wiederholen |
wort1 = "Hallo"
wort2 = "Welt"
nachricht = wort1 + " " + wort2
print(nachricht)wort = "Hallo"
satz = 5 * wort
print(satz)Unterprogramme (Methode)
Python liefert eine Reihe von String-Methoden, welche auf Strings angewandt werden können. So kann man z.B. Gross- in Kleinbuchstaben umwandeln und umgekehrt, oder aber in Text nach Buchstaben und Wörtern suchen:
a = "Hallo"
print(a.lower())
print(a.upper())
print(a.swapcase())
b = "Guten morgen liebe Schüler:innen"
print(b.find("morgen"))
print(b.replace("morgen", "nachmittag"))mehr unter https://www.w3schools.com/python/python_ref_string.asp
Aufgaben
Wir versuchen einfache Ratespiele zu programmieren. Überlege dir, welches Spiel man wie umsetzen könnte. Beginne mit dem einfachsten Spiel.
Aufgabe: Ratespiel
- Spieler 1 gibt ein Wort ein
- Der Computer gibt Tipps (z.B. den ersten Buchstaben)
- Spieler 2 muss das Wort erraten
Aufgabe: Schere, Stein, Papier
Spieler gegen Computer. Stein schlägt Schere, Schere schneidet Papier, und Papier wickelt Stein ein. Bei Gleichstand wird die Runde wiederholt.
Aufgabe: Henkerspiel (Galgenmännchen)
- Vorbereitung
- Ein Spieler (oder Spielleiter) denkt sich ein Wort aus und zeichnet für jeden Buchstaben einen Unterstrich auf Papier oder Tafel.
- Raten
- Die Mitspieler nennen Buchstaben. Ist der Buchstabe enthalten, wird er an allen entsprechenden Stellen eingetragen.
- Fehlversuche
- Ist der Buchstabe falsch, wird ein Strich des Galgens oder der Figur (Kopf, Körper, Arme, Beine) gezeichnet.
- Spielende
- Das Spiel endet, wenn das Wort erraten wurde (Sieg der Rater) oder das Galgenmännchen vollständig ist (Sieg des Vorgängers).
Aufgabe: andere Spiele
Kennst du weitere ähnliche Spiele? Wenn ja, kannst du auch eines dieser Spiele versuchen zu programmieren.
Vergleichsoperatoren
Zwei Texte werden alphabetisch verglichen. Der ausgewertete Ausdruck ergibt eine Wahrheitswert.
| Operand | Operation | Bemerkung |
|---|---|---|
== | gleicher Wert | geht auch bei String, für Float gefährlich |
!= | nicht gleich | geht auch bei String, für Float gefährlich |
< | alphabetisch vor | bei String alphabetische Sortierung |
> | alphabetisch nach | bei String alphabetische Sortierung |
<= | alphabetisch vor oder gleich | bei String alphabetische Sortierung |
>= | alphabetisch nach oder gleich | bei String alphabetische Sortierung |