Wyniki na stronach
Archiwum startów nie wysyła wszystkich wyników naraz. Jak większość internetowych API odpowiada stronami: kilka wyników na zapytanie, a po następną stronę trzeba zapytać jeszcze raz. Planiści misji chcą jednej listy wszystkich startów.
Połącz strony w jedną listę, a potem pobieraj je tak, jak robi to prawdziwy klient, nie wiedząc z góry, ile ich jest.
Ukończ etap 1, aby odblokować ten etap.
Połącz strony w jedną listę o nazwie launches, a potem wypisz, ile jest startów, i każdy z nich:
Starty: 7 Lumen-1: success Kestrel-4: success Aurora Relay: failure Kestrel-5: success Tern-2: success Lumen-2: success Polaris Cargo 3: success
Zacznij od launches = [] i rozszerzaj ją przez extend() o każdą stronę. Potem przejdź pętlą po launches, rozpakowując każdą parę: for mission, outcome in launches:.
Ukończ etap 1, aby odblokować ten etap.
Prawdziwy klient nie wie, ile jest stron. Prosi o jedną stronę naraz i zatrzymuje się po pierwszej stronie, która ma mniej niż PAGE_SIZE wyników. Dodaj PAGE_SIZE = 3 pod stronami, a potem zamień pętlę for na pętlę while, która bierze pages[0], pages[1] i tak dalej, wypisuje rozmiar każdej strony, gdy ta przychodzi, i zatrzymuje się po niepełnej:
Strona 1: rozmiar 3 Strona 2: rozmiar 3 Strona 3: rozmiar 1 Starty: 7 Lumen-1: success Kestrel-4: success Aurora Relay: failure Kestrel-5: success Tern-2: success Lumen-2: success Polaris Cargo 3: success
Pasuje tu while True: z break po sprawdzeniu rozmiaru: pętla wie, że skończyła, dopiero gdy zobaczy stronę.
Podpowiedzi
Pętla while - podstawy
# Pętla while - dopóki warunek jest True
fuel = 100
print("Symulacja zużycia paliwa:")
while fuel > 0:
print(f"Paliwo: {fuel}%")
fuel -= 25
print("Paliwo wyczerpane!")
# Odliczanie
countdown = 5
print("\nStart rakiety:")
while countdown > 0:
print(countdown)
countdown -= 1
print("LIFTOFF!")
Oddziel argumenty przecinkami. Każde uruchomienie przekazuje je jako sys.argv[1:].