Przeszukaj dziennik
Dziennik misji zapisuje tysiące linii dziennie, a dyrektor lotu chce widzieć tylko błędy. Zanim przeglądarka dziennika je podświetli, musi wiedzieć, czy linia zawiera ERROR, i gdzie.
Przeszukaj linię dziennika, a potem wyciągnij komunikat o błędzie, który po nim następuje.
Ukończ etap 1, aby odblokować ten etap.
Wypisz, czy linia zawiera ERROR, i indeks, od którego się zaczyna:
Zawiera ERROR: True Pozycja: 13
"ERROR" in line daje True albo False. line.find("ERROR") daje indeks pierwszego znaku dopasowania albo -1, jeśli dopasowania w ogóle nie ma.
Ukończ etap 1, aby odblokować ten etap.
Dyrektor lotu chce tylko komunikatu, który następuje po ERROR i spacji za nim. Dodaj linię:
Zawiera ERROR: True Pozycja: 13 Komunikat: Fuel valve 2 not responding
Zacznij wycinek tam, gdzie zaczyna się ERROR, plus jego długość, plus jeden na spację, i pomiń koniec. Czas w nawiasie może się wydłużyć, [T+100:02:00], więc licz od position, a nie od stałej liczby.
Podpowiedzi
Metody find, replace i split
# Wyszukiwanie i zamiana w stringach
report = "Misja Mars zakończona sukcesem. Mars jest bezpieczny."
# Znajdowanie pozycji
position = report.find("Mars")
print("Mars znaleziony na pozycji:", position)
# Zliczanie wystąpień
mars_count = report.count("Mars")
print("Ile razy Mars:", mars_count)
# Zamiana tekstu
new_report = report.replace("Mars", "Wenus")
print(new_report)
# Dzielenie na części
data = "Jan,Kowalski,Pilot,ISS"
elements = data.split(",")
print("Elementy:", elements)
print("Imię:", elements[0])
Oddziel argumenty przecinkami. Każde uruchomienie przekazuje je jako sys.argv[1:].