Zum Hauptinhalt springen

Text mit str

Warum brauchen wir das?

Nicht alles in einem Programm ist eine Zahl.

Namen, Nachrichten, Menütexte, Dateinamen – das sind Texte.

Python muss wissen, welche Art von Wert in einer Variable steckt, weil verschiedene Arten verschiedene Operationen erlauben:

  • Mit Zahlen kannst du rechnen: 3 + 4
  • Mit Texten kannst du z. B. anzeigen und verbinden: "Hallo" + "!"

Die „Art“ eines Wertes heißt Datentyp.

Definition: Datentyp und str

Definition – Datentyp:
Der Datentyp beschreibt, welche Art von Wert etwas ist
(Text, ganze Zahl, Kommazahl, wahr/falsch, …).

Definition – str:
str (kurz für string) ist der Python-Typ für Textwerte.
Ein String ist eine Folge von Zeichen in Anführungszeichen.

Beispiele für Strings:

"Hallo"
'Code-Club'
"12"
""

Ja: "12" ist Text, der aus den Zeichen 1 und 2 besteht –
keine Zahl zum Rechnen, solange du ihn nicht umwandelst.

Alltagsbild: Schubladen im Kopf von Py

Py hat verschiedene Schubladen:

SchubladeTypBeispiel
Textstr"Luna"
ganze Zahlint11
Kommazahlfloat1.5
wahr/falschboolTrue

Luna legt "Luna" in die Text-Schublade.
Lily legt 11 in die Zahlen-Schublade.
Buggy mischt und rechnet mit Text – dann knallt es oft.

Neue Wörter

Datentypdata type

Die Art eines Werts: Text, Zahl, wahr/falsch usw.

str / Stringstring

Texttyp in Python. Zeichenkette in Anfuehrungszeichen.

type()type()

Zeigt den Datentyp eines Werts oder einer Variable.

type() – nachschauen, was drin ist

name = "Luna"
print(name)
print(type(name))

Ausgabe (sinngemäß):

Luna
<class 'str'>

type(...) ist wie ein Etikett-Lesegerät: „Welche Schublade ist das?“

str vs. Zahl – der wichtigste Unterschied

a = "10" # str
b = 10 # int (naechste Lektionen genauer)
print(type(a))
print(type(b))
WertTypRechnen mit + 1?
10intja: 11
"10"strso nicht mit Zahl 1

Deshalb ist Umwandlung später wichtig (int("10")).

Was passiert im Computer?

  1. Anführungszeichen signalisieren: hier kommt Text.
  2. Python speichert die Zeichenfolge als str.
  3. type meldet die Klasse/den Typ.
  4. Operationen prüfen, ob sie zum Typ passen.

Häufige Irrtümer

IrrtumRichtig
"10" ist eine ZahlEs ist Text aus Ziffern
Text braucht keine AnführungszeichenDoch, sonst oft NameError
type ist unwichtigtype erklärt viele Fehler

Probiere es selbst

Experiment 1

gruss = "Willkommen!"
print(gruss)
print(type(gruss))

Experiment 2

Speichere Lieblingsessen und Lieblingstier als str.

Experiment 3

geheim = "7"
print(geheim)
print(type(geheim))

Ist geheim zum Rechnen bereit? (Noch nicht wirklich.)

Fehlerdetektiv

alter = "11"
print(alter + 1)
Lösung

"11" ist Text. Text + Zahl 1 erzeugt TypeError.

Später: int(alter) + 1.
Oder heute nur Text ausgeben: print(alter).

Übungen

Level 1

mein_name speichern, Wert und type ausgeben.

Lösung
mein_name = "Lily"
print(mein_name)
print(type(mein_name))

Level 2

Drei Strings: Club, Motto, Stadt.

Beispiel
club = "Code-Club"
motto = "Fehler sind Hinweise"
stadt = "Berlin"
print(club)
print(motto)
print(stadt)

Level 3

"100" als Text und 100 als Zahl speichern, beide type ausgeben, Unterschied im Kommentar erklären.

Beispiel
als_text = "100"
als_zahl = 100
print(type(als_text)) # str
print(type(als_zahl)) # int

Mini-Challenge

Drei Strings für eine Mini-Visitenkarte + einmal type testen.
Erkläre: Was ist ein Datentyp?

Zusammenfassung

  • Datentypen beschreiben die Art von Werten.
  • str = Text in Anführungszeichen.
  • type() zeigt den Typ.
  • "10"10.
  • Typen entscheiden, welche Operationen sinnvoll sind.

Mini-Quiz

Mini-QuizWelchen Typ hat 'Hallo'?
  1. Was macht type(name)?
  2. Ist "5" eine Zahl zum Rechnen?
  3. Warum sind Datentypen wichtig?
Lösungen
  1. Zeigt den Datentyp.
  2. Nein – Text.
  3. Weil sie festlegen, was du mit dem Wert machen darfst.

Text-Schublade offen! Als Nächstes: ganze Zahlen mit int.