Coding Garden
Anmelden

Wie Python Code ausführt

Du hast bereits dein erstes Programm geschrieben und ausgeführt. Aber was passiert eigentlich, wenn du auf den Play-Button klickst? Das zu verstehen hilft dir, Fehler besser zu finden und zu beheben.

Computer verstehen kein Python

Dein Computer versteht eigentlich nur eine Sprache: Maschinencode. Das sind Nullen und Einsen – für Menschen unlesbar. Python-Code wie print("Hallo") ist für den Computer zunächst nur Text ohne Bedeutung.

Damit dein Computer den Python-Code versteht, braucht er einen Übersetzer. Dieser Übersetzer heißt Interpreter.

Der Python-Interpreter

Der Interpreter ist das Programm, das du bei der Installation heruntergeladen hast. Er liest deinen Code, versteht ihn und sagt dem Computer, was er tun soll.

Stell dir den Interpreter wie einen Dolmetscher vor: Du sprichst Python, der Computer spricht Maschinencode, und der Interpreter übersetzt dazwischen.

Note
Wenn du python in der Kommandozeile eingibst, startest du den Interpreter. Er wartet dann auf deine Befehle.

Zeile für Zeile

Python ist eine interpretierte Sprache. Das bedeutet: Der Interpreter liest und führt den Code Zeile für Zeile aus – von oben nach unten.

Python
print("Erste Zeile")   # 1. Diese Zeile wird zuerst ausgeführt
print("Zweite Zeile")  # 2. Dann diese
print("Dritte Zeile")  # 3. Und zuletzt diese

Der Interpreter arbeitet so:

  1. Lies Zeile 1
  2. Verstehe den Befehl (print mit dem Text "Erste Zeile")
  3. Führe ihn aus (Text erscheint auf dem Bildschirm)
  4. Gehe zur nächsten Zeile
  5. Wiederhole, bis keine Zeilen mehr übrig sind

Dieses Prinzip ist wichtig: Wenn Zeile 3 einen Fehler hat, werden Zeile 1 und 2 trotzdem ausgeführt, bevor der Fehler auftritt.

Zwei Arten von Fehlern

Beim Programmieren triffst du auf zwei Arten von Fehlern. Sie unterscheiden sich darin, wann sie auftreten.

Syntaxfehler (vor der Ausführung)

Syntax sind die Grammatikregeln einer Programmiersprache. Ein Syntaxfehler ist wie ein Rechtschreibfehler – Python versteht nicht, was du meinst.

IncorrectPython
print("Hallo"

Hier fehlt die schließende Klammer. Python erkennt das Problem, bevor es den Code ausführt:

Text
SyntaxError: '(' was never closed

Bei einem Syntaxfehler passiert gar nichts – nicht einmal die Zeilen vor dem Fehler werden ausgeführt. Python prüft zuerst die gesamte Datei auf Syntaxfehler.

Laufzeitfehler (während der Ausführung)

Laufzeitfehler treten auf, während das Programm läuft. Die Syntax ist korrekt, aber irgendetwas anderes stimmt nicht.

IncorrectPython
print("Das funktioniert")
print(unbekannte_variable)
print("Das wird nie erreicht")

Ausgabe:

Text
Das funktioniert
NameError: name 'unbekannte_variable' is not defined

Zeile 1 wurde ausgeführt ("Das funktioniert" erscheint). Bei Zeile 2 tritt der Fehler auf. Zeile 3 wird nie erreicht.

Tip
Achte bei Fehlermeldungen auf die Zeilennummer. Python zeigt dir genau, wo das Problem liegt.

Fehlermeldungen lesen

Fehlermeldungen sehen auf den ersten Blick kompliziert aus. Sie folgen aber einem klaren Muster:

Text
Traceback (most recent call last):
  File "programm.py", line 2, in <module>
    print(unbekannte_variable)
          ^^^^^^^^^^^^^^^^^^^^
NameError: name 'unbekannte_variable' is not defined

So liest du diese Meldung:

  • File "programm.py", line 2 – Der Fehler ist in der Datei "programm.py" in Zeile 2
  • print(unbekannte_variable) – Das ist die problematische Zeile
  • NameError – Die Art des Fehlers (hier: ein Name wurde nicht gefunden)
  • name 'unbekannte_variable' is not defined – Die genaue Beschreibung

Lies Fehlermeldungen immer von unten nach oben. Die wichtigste Information steht in der letzten Zeile.

Häufige Fehlerarten

Hier sind die Fehler, die dir am Anfang am häufigsten begegnen werden:

Bedeutung: Python versteht deinen Code nicht. Etwas stimmt mit der Schreibweise nicht.

Häufige Ursachen:

  • Fehlende Klammern oder Anführungszeichen
  • Falsche Einrückung
  • Tippfehler in Schlüsselwörtern
IncorrectPython
# Fehlende Klammer
print("Hallo"

# Fehlende Anführungszeichen
print(Hallo)

Bedeutung: Python kennt einen Namen nicht, den du verwendet hast.

Häufige Ursachen:

  • Variable wurde nicht erstellt
  • Tippfehler im Variablennamen
  • Anführungszeichen bei Text vergessen
IncorrectPython
# Variable existiert nicht
print(nachricht)

# Tippfehler
nachricht = "Hallo"
print(narchicht)  # Falsch geschrieben

Bedeutung: Du versuchst, etwas mit einem falschen Datentyp zu machen.

Häufige Ursachen:

  • Text und Zahlen falsch kombiniert
  • Funktion mit falschen Argumenten aufgerufen
IncorrectPython
# Text und Zahl addieren funktioniert nicht
alter = "25"
print(alter + 1)  # TypeError!

Interpreter vs. Compiler

Es gibt zwei Ansätze, wie Programmiersprachen Code ausführen können. Python verwendet einen Interpreter, aber andere Sprachen nutzen einen Compiler.

Der Interpreter übersetzt und führt den Code gleichzeitig aus – Zeile für Zeile.

  • Schneller Start (keine Wartezeit vor der Ausführung)
  • Fehler werden erst gefunden, wenn die Zeile erreicht wird
  • Einfacher zu testen und zu debuggen
  • Beispiele: Python, JavaScript, Ruby

Der Compiler übersetzt den gesamten Code in Maschinencode, bevor das Programm startet.

  • Kompilierung braucht Zeit, aber das fertige Programm läuft schneller
  • Viele Fehler werden vor der Ausführung gefunden
  • Erzeugt eine ausführbare Datei (.exe unter Windows)
  • Beispiele: C, C++, Rust, Go

Für Anfänger ist ein Interpreter praktischer: Du kannst Code schnell ausprobieren und siehst sofort das Ergebnis. Deshalb ist Python eine beliebte Einsteigersprache.

Zusammenfassung

Du hast in diesem Artikel gelernt:

  • Der Python-Interpreter übersetzt deinen Code für den Computer
  • Python führt Code Zeile für Zeile von oben nach unten aus
  • Syntaxfehler verhindern die Ausführung komplett
  • Laufzeitfehler treten während der Ausführung auf
  • Fehlermeldungen zeigen dir genau, wo das Problem liegt

Im nächsten Artikel lernst du Variablen kennen – eine der wichtigsten Grundlagen beim Programmieren.