Space Python Ładowanie Pythona…

Raport telemetrii

Napisz kodŚredni 2 etapy

Stacja naziemna nie dostaje już jednego odczytu naraz: kanał co sekundę dostarcza blok linii. Kontrolerzy lotu chcą je widzieć jako raport, który da się przejrzeć jednym spojrzeniem, a nie jako surowy tekst rozdzielony przecinkami.

Rozbuduj swój parser z „Odczytaj linię telemetrii”, żeby czytał cały blok, a potem ułóż go w tabelę z wyrównanymi kolumnami.

Kod startowy zawiera kanał i twój parser z „Odczytaj linię telemetrii”, który czyta jedną linię. Zastąp parser tak, żeby czytał wszystkie trzy linie kanału i wypisywał każdy odczyt w jednym wierszu: godzinę, czujnik, wartość i jednostkę.

09:30:05 ENG-2 412.5 C
09:30:06 CAB-1 101.3 kPa
09:30:07 BAT-3 87.2 %

feed.split("\n") dzieli kanał na linie, a każda linia dzieli się przy przecinkach jak wcześniej. Godzina to [11:19] znacznika czasu. print() wstawia spację między swoje wartości.

Wypisz każdy odczyt
Działa dla każdego kanału

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

Teraz zrób z tego raport: wiersz nagłówka i kolumny, które się wyrównują, z wartościami wyrównanymi do prawej i jednym miejscem po przecinku.

CZAS      CZUJNIK  WARTOŚĆ  JEDNOSTKA
09:30:05  ENG-2      412.5  C
09:30:06  CAB-1      101.3  kPa
09:30:07  BAT-3       87.2  %

Użyj szerokości jak w „Wyrównanej tablicy statusu”: kolumna godziny ma 10 znaków, a kolumna czujnika 9, obie wyrównane do lewej; wartość jest wyrównana do prawej w 7 znakach, jako :>7.1f, żeby przecinki dziesiętne stały w jednej linii; potem dwie spacje i jednostka. Nagłówek używa tych samych szerokości.

Wypisz raport
Wyrównuje się dla każdych wartości
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

Formatowanie tekstu z f-string

F-stringi (f"...") to wygodny sposób wstawiania zmiennych do tekstu. Wystarczy umieścić zmienną w nawiasach klamrowych {zmienna}.
formatowanie-tekstu-f-string.py
# F-stringi - nowoczesne formatowanie tekstu
astronaut = "Jan Kowalski"
mission = "Mars Explorer"
days_in_space = 180

# Wstawiamy zmienne w tekst za pomocą {}
print(f"Astronauta: {astronaut}")
print(f"Misja: {mission}")
print(f"Czas trwania: {days_in_space} dni")

# Możemy też wykonywać obliczenia
print(f"To jest {days_in_space / 30:.1f} miesięcy")
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:].