Przeczytaj traceback
Raport temperatury silnika przestał działać po porządkach w kodzie. Python nie poddał się jednak bez słowa: wypisał traceback, krótki raport o tym, gdzie był program, gdy coś poszło nie tak.
Przeczytaj go, zapisz, co ci mówi, i napraw błąd dokładnie tam, gdzie wskazuje.
Ukończ etap 1, aby odblokować ten etap.
Uruchom program. W konsoli Python wypisuje traceback:
File "script.py", line 20 File "script.py", line 16, in average_kelvin File "script.py", line 10, in to_kelvin KeyError: 'temperature_c'
Czytaj go od dołu: ostatnia linia to błąd, a linia File tuż nad nią to miejsce, w którym wystąpił. Uzupełnij error_type, crash_function i crash_line na końcu programu, a potem napraw błąd w tej linii, żeby program wypisał:
Średnia: 695.0 K
Napraw funkcję, a nie dane: odczyty przychodzą z czujników takie, jakie są.
Ukończ etap 1, aby odblokować ten etap.
Raport obejmuje teraz każdy przelot, a najnowszy eksport wysyła jedną temperaturę jako tekst. Przelot 1 się wypisuje, a potem program zatrzymuje się z dłuższym tracebackiem. Policz jego linie File do frames, zapisz nazwę błędu w error_type i napraw błąd w linii, którą wskazuje najniższa linia File, żeby program wypisał:
Przelot 1: 695.0 K Przelot 2: 695.7 K
Dane zostają bez zmian: spraw, żeby funkcja przyjmowała temperaturę wysłaną jako tekst.
Podpowiedzi
Oddziel argumenty przecinkami. Każde uruchomienie przekazuje je jako sys.argv[1:].