Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Einen Fehler Schritt für Schritt finden

Nach dieser Lektion: Ich kann einen Fehler finden, indem ich jeweils nur eine Sache prüfe.

Lektion, 50 Min.Keine Befehle

Die Summe ist immer zu niedrig

Der Support meldet: Mehrere Personen sagen, ihr Warenkorb sei zu billig berechnet. Es fehlt immer ein Artikel.

Sie sehen keine Fehlermeldung. Das Programm läuft, nur die Zahl stimmt nicht. Wer hier wild Zeilen ändert, macht es schlimmer. Wer ruhig eine Sache nach der anderen prüft, findet den Fehler.

Am Ende dieser Lektion

Notiz

Ich kann einen Fehler finden, indem ich jeweils nur eine Sache prüfe.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Bugein Fehler im Code
Fehlermeldungder Text, mit dem Python einen Absturz erklärt
Tracebackdie Liste der Stellen, die zum Absturz führten
Ausgabeein Wert, den Sie mit print sichtbar machenprint(summe)
Halbierenden verdächtigen Code in zwei Teile teilen und einen prüfen

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Lesen Sie die Fehlermeldung von unten

Eine Fehlermeldung wirkt lang. Die wichtigste Zeile steht aber ganz unten.

Sie nennt die Art des Fehlers und oft den Grund. Darüber steht der Weg dorthin, mit Dateiname und Zeile. Lesen Sie von unten nach oben: erst was, dann wo.

Ausprobieren: eine Meldung lesen

Code: python
def durchschnitt_wartezeit(wartezeiten):
    # Minuten, die jedes Support-Ticket auf die erste Antwort gewartet hat.
    summe = 0
    for zeit in wartezeiten:
        summe = summe + zeit
    return summe / len(wartezeiten)


print(durchschnitt_wartezeit([12, 30, 18]))
print(durchschnitt_wartezeit([]))

# Drücken Sie Run. Lesen Sie zuerst die letzte Zeile der Fehlermeldung.
# Ändern Sie dann die Funktion so, dass eine leere Liste 0 ergibt.

Ohne Fehlermeldung: Werte sichtbar machen

Manchmal stürzt nichts ab, und das Ergebnis ist trotzdem falsch. Dann raten Sie nicht.

Schreiben Sie mit print die Werte aus, die Sie verdächtigen. Vergleichen Sie jeden mit dem, was Sie erwarten. Die erste Zeile, die nicht stimmt, zeigt Ihnen die Stelle.

Ein häufiger Fehler

Warnung

Viele denken, es gehe schneller, mehrere Zeilen auf einmal zu ändern. Dann wissen Sie nicht, welche Änderung geholfen hat, und Sie können neue Fehler einbauen. Ändern Sie eine Sache und prüfen Sie dann.

Üben: mit print den Fehler zeigen

Code: python
def arbeitsstunden(schichten):
    # Jede Schicht ist [Beginn, Ende] in Stunden auf der 24-Stunden-Uhr.
    summe = 0
    for schicht in schichten:
        beginn = schicht[0]
        ende = schicht[1]
        summe = beginn - ende
    return summe


woche = [[9, 17], [9, 13], [12, 20]]
print("Stunden diese Woche:", arbeitsstunden(woche))

# Das Ergebnis müsste 20 sein. Fügen Sie diese Zeile in die Schleife ein:
#     print("beginn", beginn, "ende", ende, "summe", summe)
# Drücken Sie Run, lesen Sie jede Zeile und beheben Sie die zwei Fehler.

Halbieren Sie das Problem

Eine Funktion mit 40 Zeilen hat einen Fehler. Prüfen Sie den Wert in der Mitte.

Stimmt er schon, steckt der Fehler in der zweiten Hälfte. Stimmt er nicht, in der ersten. Mit jedem Schritt scheiden Sie die Hälfte aus. Nach sechs Schritten haben Sie eine einzelne Zeile.

Beispiel: 40 Zeilen, ein Fehler

SchrittSie prüfenErgebnisFehler steckt in
1Wert nach Zeile 20FalschZeile 1 bis 20
2Wert nach Zeile 10RichtigZeile 11 bis 20
3Wert nach Zeile 15FalschZeile 11 bis 15
4Wert nach Zeile 13RichtigZeile 14 bis 15

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.