Zum Hauptinhalt springen

NameError und TypeError

NameError – unbekannter Name

print(punkte)

Python kennt punkte nicht – Variable fehlt oder Tippfehler (Punkte vs punkte).

TypeError – falsche Art

print("Alter: " + 11)

String und Zahl so mit + verbinden geht nicht.

Besser:

print("Alter:", 11)
# oder
print("Alter: " + str(11))

input und int

# riskant ohne Absicherung:
alter = input("Alter: ")
print(alter + 1) # TypeError: str + int

Mit Umwandlung:

alter = int(input("Alter: "))
print(alter + 1)

Rate mal!

print(len(5))

Welche Art?

Auflösung

TypeError – Zahlen haben keine Länge wie Strings/Listen.

Probiere es selbst

Experiment 1

NameError absichtlich erzeugen.

Experiment 2

TypeError mit "a" + 1.

Experiment 3

Beide reparieren.

Fehlerdetektiv

name = "Luna"
print(Name)
Lösung

Groß/Klein: print(name).

Übungen

Level 1

Erkläre NameError in einem Satz.

Level 2

Repariere "Score: " + 10.

Level 3

Mini-Dialog: Name (str) und Alter (int) korrekt ausgeben.

Level-2-Lösung
print("Score:", 10)

Mini-Quiz

Mini-QuizWelcher Fehler ist print(unbekannt)?

Zwei Fehlerarten sitzen! Als Nächstes: Logikfehler.