
Typy zadańInformatykaPoziom rozszerzony
Python na maturze z informatyki: co musi zawierać program
Python jest dopuszczony na maturze z informatyki obok C/C++ i Javy. Zadanie z plikiem danych ocenia wynik zapisany w pliku, nie kod widoczny na ekranie.

Python na maturze z informatyki jest dopuszczony obok C/C++ i Javy, na liście języków, które dyrektor CKE ogłasza przed każdym egzaminem. Zadania praktyczne z plikiem danych oceniają rezultat programu, nie sam zapis kodu. Program musi wczytać dane, przetworzyć je i zapisać wynik w osobnym pliku, inaczej egzaminator nie ma czego ocenić.
Czy Python jest dopuszczony na maturze z informatyki?
Python jest jednym z trzech języków programowania, które można wybrać na maturze z informatyki, obok C/C++ i Javy. Wyboru dokonujesz przed egzaminem: razem z systemem operacyjnym i środowiskiem trafia on na pierwszą stronę arkusza jako zadeklarowany zestaw narzędzi. Języka nie zmienisz już w trakcie egzaminu.
Stanowisko komputerowe ma zainstalowane wyłącznie środowisko zgłoszone wcześniej przez szkołę. Nie da się doinstalować dodatkowego edytora ani biblioteki na miejscu. Python wymaga wersji co najmniej 3.10, uruchamianej w IDLE albo PyCharmie. Egzamin trwa 210 minut i daje maksymalnie 50 punktów, z czego 60 procent przypada na zadania z algorytmiki i programowania. Właśnie tam trafiają zadania z kodem.
Do wyboru jest jeden pakiet i jeden język na cały egzamin, dlatego przetestuj docelowe środowisko wcześniej, najlepiej na sprzęcie zbliżonym do szkolnego (klawiatura w szkolnej pracowni bywa inna niż domowa, a szukanie nawiasu klawiszem, którego nie ma, kosztuje czas na egzaminie). Taki test dobrze wpasować w przygotowania do matury z informatyki, obok powtórki działów.

Jak wygląda typowe zadanie z plikiem danych?
Zadanie praktyczne z plikiem danych to część większej wiązki tematycznej: pierwsze podpunkty często rozwiązujesz na kartce (analiza, zapis algorytmu), kolejne wymagają programu, który wczyta dołączony plik i policzy odpowiedź. Bez pliku wejściowego zadanie w ogóle nie da się rozwiązać zgodnie z poleceniem.
Plik dołączony do arkusza bywa listą liczb, tekstem do przetworzenia albo zestawem rekordów, a nazwa i format wynikają wprost z treści zadania. Program czyta go z dysku stanowiska: dane nie siedzą wpisane na sztywno w kodzie, tak jak w przykładzie z treści. Ostatni podpunkt wiązki zwykle każe zapisać wynik do osobnego pliku tekstowego, który wraz z kodem źródłowym trafia do oceny. Brak takich plików liczy się jako brak rozwiązania, niezależnie od tego, co zdający napisał na kartce.
Ten sam plik czasem da się obsłużyć też arkuszem kalkulacyjnym albo bazą danych: polecenie zwykle dopuszcza dowolne z tych narzędzi, o ile stanowisko je ma zainstalowane, a ocenie podlega sam rezultat. Python zostaje mimo to najczęstszym wyborem przy zadaniach opartych na pliku tekstowym: czytanie i zapis pliku wymaga w nim mniej kodu niż w C++ czy Javie.
Co musi zawierać program, żeby dostać punkty?
Egzaminator ocenia efekt działania programu, nie styl kodu ani liczbę linii. Program musi otworzyć wskazany plik, poprawnie przetworzyć wszystkie dane z niego, a wynik zapisać dokładnie w formie, jakiej wymaga polecenie. Cztery elementy decydują o punktach; każdego z nich brakuje w innym typowym błędzie.
| Element | Za co punkt | Typowy brak |
|---|---|---|
| Wczytanie pliku | Program czyta dane z pliku, a nie wartości wpisane na sztywno w kodzie | Program działa tylko na przykładzie z treści zadania |
| Przetworzenie całości | Wynik uwzględnia każdy wiersz albo element pliku, nie tylko pierwsze przypadki | Pętla kończy się za wcześnie albo pomija ostatni element |
| Zapis wyniku | Plik wynikowy istnieje, ma zgodną nazwę i zawiera żądaną wartość | Wynik trafia tylko na ekran konsoli, nie do pliku |
| Zgodność z poleceniem | Liczba, kolejność i format odpowiadają dokładnie treści zadania | Poprawna wartość zapisana w złej kolejności albo złym formacie |
Jak zapisać wynik, żeby egzaminator go znalazł?
Wynik zapisujesz do osobnego pliku tekstowego, którego nazwę podaje treść zadania, zwykle jest to plik oznaczony numerem zadania, na przykład wyniki6.txt. Ten plik, razem z kodem źródłowym, trafia do oceny jako dowód komputerowej realizacji. Sam wydruk na ekranie konsoli nie liczy się jako oddane rozwiązanie.
Szkielet takiego programu wygląda podobnie niezależnie od zadania: wczytanie pliku, pętla przetwarzająca dane, zapis wyniku.
```python with open("dane.txt", "r", encoding="utf-8") as plik: liczby = [int(w) for w in plik.read().split() if w.strip()]
suma = 0 for liczba in liczby: suma += liczba
srednia = suma / len(liczby) if liczby else 0
with open("wynik.txt", "w", encoding="utf-8") as wyjscie: wyjscie.write(f"suma: {suma}\n") wyjscie.write(f"srednia: {srednia:.2f}\n") ```
Ten sam wzorzec (otwórz, przetwórz w pętli, zapisz) pasuje do zadań z tekstem, rekordami czy współrzędnymi, zmienia się tylko sposób parsowania linii. Format zapisu (liczba miejsc po przecinku, separator, kolejność) bierz dosłownie z treści zadania, nie z przyzwyczajenia.
Kont jeszcze nie otwieramy
Zapisz się na listę, a napiszemy, gdy będzie można oddać pierwsze rozwiązanie do oceny krok po kroku.
Zapisz się na listęKtóre konstrukcje języka wystarczą?
Do większości zadań praktycznych wystarczy wąski zestaw: zmienne, instrukcje warunkowe, pętla for lub while, listy i podstawowe operacje na tekście. Zaawansowane biblioteki czy programowanie obiektowe nie zwiększają liczby punktów, a dodają ryzyko literówki w składni, której nikt nie zdąży poprawić pod presją czasu.
Operacje na plikach (open, read, write, split) i podstawowe funkcje wbudowane (len, int, float, round) obsługują niemal każde zadanie z plikiem danych. Nie widziałem jeszcze takiego zadania, do którego potrzebne byłyby generatory czy dekoratory, więc uczenie się ich pod ten typ zadania to strata czasu. Do zliczania powtórzeń albo grupowania rekordów wystarczy słownik (dict) w parze z pętlą for, bez importowania dodatkowych modułów. Jeśli wolisz najpierw rozpisać rozwiązanie krok po kroku, zanim zapiszesz je w Pythonie, zasady zapisu pseudokodu są podobne do oceny gotowego programu: liczy się jednoznaczność, nie wybrana notacja.
Które trzy błędy kosztują punkty mimo dobrego kodu?
Program, który poprawnie liczy na oczach zdającego, potrafi mimo to dostać zero punktów, i to z powodów niezwiązanych z logiką obliczeń. Egzaminator ocenia to, co zostało faktycznie oddane, nie to, co działało na ekranie w trakcie pisania.
Pierwszy powód to brak pliku wynikowego: program wypisuje wynik na ekran konsoli, ale nie zapisuje go do pliku wskazanego w poleceniu, więc formalnie nie ma czego ocenić. Drugi to wynik „z pamięci”, czyli wartość wpisana ręcznie zamiast obliczona przez program. Nawet jeśli akurat jest poprawna, nie odzwierciedla komputerowej realizacji zadania. Trzeci to pominięte dane: program zakłada stałą liczbę wierszy albo ignoruje ostatnią linię pliku, więc dla części danych wynik wychodzi po prostu pusty.
Ten sam wymóg obowiązuje też przy zapytaniach SQL. Ocenie podlega zwrócony zestaw wierszy z realnej realizacji zapytania, nie zapamiętana czy odgadnięta odpowiedź.
Najczęstsze pytania
Czy trzeba znać biblioteki spoza wbudowanych w Pythona?
Nie. Zadania praktyczne rozwiązuje się wbudowaną obsługą plików i podstawowymi konstrukcjami języka. Stanowisko egzaminacyjne ma zainstalowane wyłącznie środowisko zgłoszone wcześniej przez szkołę, bez dodatkowych pakietów do doinstalowania na miejscu.
Co się liczy, jeśli program działa, ale plik wynikowy jest pusty?
Egzaminator traktuje takie zadanie tak, jakby rozwiązania nie było. Liczą się rzeczywiste rezultaty zapisane w pliku, a nie sam kod źródłowy ani to, co program teoretycznie potrafi policzyć.
Czy da się zapisać rozwiązanie w pseudokodzie zamiast w Pythonie?
Część zadań z algorytmiki dopuszcza pseudokod albo listę kroków „na kartce”. Zadania praktyczne z plikiem danych wymagają jednak uruchamialnego programu i zapisanej komputerowej realizacji. Samego opisu słownego nie da się ocenić jako wyniku.
Czy wybór Pythona zamiast C++ albo Javy zmienia liczbę punktów za zadanie?
Nie. Zasady oceniania są wspólne dla każdego dopuszczonego języka: liczy się poprawność i kompletność wyniku, nie to, którego narzędzia użyto do jego uzyskania.
Czy program musi wczytać cały plik, czy wystarczy fragment?
Cały plik. Zadanie wymaga przetworzenia wszystkich danych wejściowych, nie tylko pierwszych kilku wierszy. Program, który pomija resztę pliku, dostaje punkty tylko za tę część, którą faktycznie obsłużył.
Jak to sprawdzisz w zdawce
W zdawce piszesz kod w Pythonie bezpośrednio w przeglądarce, bez instalowania środowiska, tak samo dostępne są C++, SQL i arkusz kalkulacyjny. Wynik programu ocenia najpierw algorytm: porównuje go krok po kroku z rubryką zadania. Złożone przypadki trafiają do modelu AI, który trzyma się tej samej rubryki, więc suma punktów nigdy jej nie przekroczy. Postęp widzisz per umiejętność, nie jako jedną zbiorczą ocenę z całego zadania.
Sprawdź to na własnym rozwiązaniu: wklej kod do zadania z plikiem danych i zobacz, na którym kroku system zaznaczy brakujący punkt.
Kont jeszcze nie otwieramy
Zapisz się na listę, a napiszemy, gdy będzie można oddać pierwsze rozwiązanie do oceny krok po kroku.
Źródła
- Komunikat dyrektora CKE o egzaminie z informatykicke.gov.pl
- Informator o egzaminie maturalnym z informatyki (CKE)cke.gov.pl
- Arkusze i zasady oceniania — Formuła 2023 (CKE)cke.gov.pl
Zasady egzaminu i komunikaty potrafią się zmieniać. Przed decyzją sprawdź aktualny dokument CKE ze źródeł powyżej.
Zespół zdawki korzysta z modeli językowych przy przygotowywaniu tekstów na tym blogu.



