7. Woda na Marsie: trzy pliki

Matura maj 2025 - Matura z informatyki: arkusze krok po kroku (Python)

**Zadanie 7. Poszukiwanie wody na Marsie.** Trzy pliki z nagłówkami i tabulatorami: `laziki.txt` (numer, nazwa, rok wysłania, współrzędne lądowania), `obszary.txt` (kod, nazwa) i `pomiary.txt` (numer łazika, data, kod obszaru, współrzędne, głębokość, ilość wody). To zadanie bazodanowe: w arkuszu robi się je kwerendami, Python też jest dozwolony. Tabele łączy się słownikami po kluczu (numer łazika, kod obszaru), jak relacje w bazie. `pomiary_przyklad.txt` to pierwsze 300 pomiarów (wycinek do sprawdzania programu).

from datetime import date

def load(name):
    # plik z nagłówkiem, pola rozdzielone tabulatorami
    with open(name, encoding="utf-8") as f:
        next(f)
        return [line.rstrip("\n").split("\t") for line in f]


rovers = {row[0]: row for row in load("laziki.txt")}  # nr -> nr, nazwa, rok, współrzędne
areas = {code: name for code, name in load("obszary.txt")}
surveys = load("pomiary_przyklad.txt")  # nr łazika, data, kod obszaru, współrzędne, głębokość, ilość

print(len(rovers), len(areas), len(surveys))
print(surveys[0])

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu Matura z informatyki: arkusze krok po kroku·Zaloguj się, aby zapisać postęp na koncie.