Brakujące pole
Tablica startów pokazuje każdy start z jego stanowiskiem. Działała tygodniami, aż API przysłało start, któremu nie przydzielono jeszcze stanowiska. Zamiast tablicy z jednym pustym miejscem operatorzy dostali błąd i żadnej tablicy.
Przewidź, co się stanie, sprawdź, co naprawdę zawiera słownik, napraw to, a potem zbuduj tablicę, która poradzi sobie z każdym brakującym polem.
Ukończ etap 1, aby odblokować ten etap.
Nie uruchamiaj jeszcze kodu. Przeczytaj go i zdecyduj, co wypisze. 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.
Spójrz, jakie klucze naprawdę ma słownik.
Ten program kończy się błędem, a programu, który się wysypuje, nie da się sprawdzić. Gdy go uruchomisz i zobaczysz błąd, postaw # przed ostatnią linią print, a potem sprawdź: zobaczysz swoje przewidywanie obok tego, co zrobiła oryginalna linia.
Ukończ etap 1, aby odblokować ten etap.
Zbadaj. Sprawdź przez "pad" in launch, czy "pad" jest jednym z kluczy, i zapisz True albo False w pad_is_key. Potem wypisz launch.get("pad") i zapisz to, co oddaje, jako tekst, w get_gives. Przed sprawdzeniem usuń dodane linie.
Zmień. Gdy nie ma stanowiska, wypisz „do ustalenia”, zamiast się zatrzymywać. Ma wypisać:
Misja: Kestrel-7 Stanowisko: do ustalenia
Ukończ etap 2, aby odblokować ten etap.
Wypisz każdy start z operatorem i stanowiskiem, z wartością domyślną dla tego, czego brakuje:
Lumen-3: JAXA, Tanegashima LA-Y2 Kestrel-7: ESA, stanowisko do ustalenia Tern-5: nieznany operator, Sriharikota SLP
Każdy start ma nazwę, więc czytaj ją w nawiasach; dla operatora i stanowiska użyj get() z wartością domyślną.
Podpowiedzi
Tworzenie słowników
# Słowniki - pary klucz: wartość
# Tworzenie słownika
ship = {
"name": "Enterprise",
"class": "Constitution",
"crew": 430,
"active": True
}
print("Statek:", ship)
# Dostęp do wartości
print("Nazwa:", ship["name"])
print("Załoga:", ship["crew"])
# Metoda get() - bezpieczniejsza
print("Kapitan:", ship.get("captain", "Nieznany"))
# Pusty słownik
data = {}
print("Pusty:", data)
Oddziel argumenty przecinkami. Każde uruchomienie przekazuje je jako sys.argv[1:].