Space Python Ładowanie Pythona…

Cicha gałąź

Napraw kodŁatwy 3 etapy

Publiczna tablica startów koloruje każdy start według statusu: zielone dla Go, pomarańczowe dla Hold, czerwone dla Scrub. Go i Hold wyglądają dobrze. Odwołane starty nie mają żadnego koloru i nikt tego nie zauważył, dopóki start nie został odwołany na żywo w telewizji.

Przewidź, co wypisze tablica, sprawdź, które statusy przelatują przez funkcję, napraw ją, a potem napisz taką, w której żadna ścieżka nie zostaje bez odpowiedzi.

Nie uruchamiaj jeszcze kodu. Przeczytaj go i zdecyduj, co wypisze w ostatniej linii. Wpisz swoje przewidywanie w prediction, na górze, w cudzysłowie. Potem uruchom kod i porównaj.

Na tym etapie zalicza każde przewidywanie: chodzi o to, żeby pomyśleć przed uruchomieniem. Po sprawdzeniu zobaczysz swoje przewidywanie obok tego, co wypisał Python.

Prześledź "Scrub" przez funkcję aż do jej końca.

Przewiduj, potem uruchom
Zostaw program bez zmian

Ukończ etap 1, aby odblokować ten etap.

Zbadaj. Zapisz, co oddają status_light("Scrub") i status_light("TBD"), jako tekst, w scrub_gives i unknown_gives.

Zmień. Spraw, żeby każda ścieżka przez funkcję zwracała kolor: czerwone dla Scrub i szare dla każdego innego statusu. Tablica pokazuje teraz też TBD i ma wypisać:

Go: zielone
Hold: pomarańczowe
Scrub: czerwone
TBD: szare
Znajdź ciche ścieżki
Zwracaj na każdej ścieżce

Ukończ etap 2, aby odblokować ten etap.

Napisz battery_state(percent): pełna od 80% w górę, w normie od 20% w górę i niska poniżej. Upewnij się, że każda ścieżka zwraca wynik. Potem wypisz:

95%: pełna
80%: pełna
41%: w normie
20%: w normie
7%: niska

Sprawdzaj od góry i zwracaj, gdy tylko znasz odpowiedź; ostatnia linia funkcji obejmuje wszystko, co zostało.

Wypisz stany baterii
Każda ścieżka zwraca
Nie jesteś zalogowany, więc postęp zostaje tylko w tej przeglądarce. Zaloguj się, aby go zapisać i korzystać z podpowiedzi oraz rozwiązań.

Podpowiedzi

Wczesne wyjście z funkcji

return może być użyte do wcześniejszego wyjścia z funkcji. Wzorzec "guard clause" sprawdza warunki na początku funkcji.
wczesne-wyjscie-z-funkcji.py
# Wczesne wyjście z funkcji (guard clause)

def check_fuel(level):
    """Sprawdza czy poziom paliwa jest wystarczający."""
    if level < 0:
        return "Błąd: ujemny poziom"
    
    if level == 0:
        return "KRYTYCZNY: Brak paliwa!"
    
    if level < 25:
        return "OSTRZEŻENIE: Niski poziom"
    
    if level < 50:
        return "OK: Rozważ tankowanie"
    
    return "OK: Paliwo wystarczające"

# Testowanie różnych poziomów
for p in [100, 40, 20, 0, -5]:
    status = check_fuel(p)
    print(f"Poziom {p}%: {status}")
Otwórz cały przykład
script.py
PythonWiersz 1, kol. 1Spacje: 4
Ładowanie środowiska Pythona…

Oddziel argumenty przecinkami. Każde uruchomienie przekazuje je jako sys.argv[1:].