KWALIFIKACJA INF2 + INF3 - CZERWIEC 2013

PYTANIE NR 11.
Do inicjalizacji okna graficznego w bibliotece Pygame w Pythonie służy wywołanie
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Wywołanie pygame.display.set_mode() tworzy okno (i zwraca powierzchnię ekranu do rysowania). Pozostałe funkcje jedynie inicjalizują moduły biblioteki lub odświeżają już istniejące okno, więc same w sobie nie służą do utworzenia okna graficznego.

Pełne wyjaśnienie:

W Pygame (Python) kluczowe jest rozróżnienie trzech czynności: inicjalizacja biblioteki, utworzenie okna oraz odświeżanie obrazu.

Poprawne jest wywołanie "pygame.display.set_mode()", ponieważ to ono tworzy okno (lub ekran w trybie pełnoekranowym – zależnie od parametrów) i zwraca obiekt powierzchni (Surface), na której rysuje się elementy grafiki. W praktyce właśnie po utworzeniu tej powierzchni można wykonywać rysowanie i renderowanie.

  • "pygame.display.init()" dotyczy inicjalizacji modułu display (przygotowanie podsystemu), ale nie jest to jednoznaczne z utworzeniem okna roboczego, na którym od razu można rysować w oczekiwanym rozmiarze.
  • "pygame.init()" inicjalizuje wiele modułów Pygame naraz (np. dźwięk, wejście), co jest często wykonywane na początku programu, jednak nadal nie wskazuje konkretnego utworzenia okna o zadanym rozmiarze.
  • "pygame.display.update()" służy do odświeżenia zawartości okna (wyświetlenia zmian po rysowaniu). To etap końcowy pojedynczej klatki, a nie inicjalizacja.

Wskazówka egzaminacyjna: szukaj funkcji, która ustawia tryb/rozmiar okna (często w nazwie pojawia się "mode", "set", "create") i która zwraca obiekt ekranu. Funkcje typu init zwykle tylko przygotowują bibliotekę, a update/flip odpowiada za odświeżanie obrazu.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Tworzy okno aplikacji (ustawia tryb wyświetlania) i zwraca powierzchnię ekranu (Surface), na której rysujesz grafikę. To podstawowy krok, aby móc cokolwiek wyświetlić w Pygame, np. w rozdzielczości 800x600.
pygame.init() uruchamia (inicjalizuje) różne moduły biblioteki, np. dźwięk czy obsługę wejścia. Nie ustawia jednak rozmiaru i trybu ekranu. Okno powstaje dopiero, gdy wywołasz pygame.display.set_mode().
pygame.display.update() odświeża zawartość już istniejącego okna, czyli pokazuje na ekranie to, co narysowano w bieżącej klatce. Nie inicjalizuje okna. Zwykle wywołuje się ją w pętli gry po rysowaniu elementów.
pygame.display.init() inicjalizuje tylko podsystem wyświetlania. Stosuje się to, gdy chcesz uruchomić wyłącznie wybrane moduły Pygame, a nie wszystkie naraz. Mimo tego do stworzenia okna i tak potrzebujesz pygame.display.set_mode().
Szukaj wywołania, które ustawia tryb lub rozmiar (np. "set", "mode", "create", "window") i często zwraca obiekt ekranu/okna. Funkcje "init" zwykle przygotowują bibliotekę, a "update/refresh/flip" odpowiadają za odświeżanie.
Uczniowie mylą etap utworzenia okna z etapem wyświetlenia zmian. set_mode() tworzy okno i ekran do rysowania, a update() jedynie odświeża obraz w tym oknie. Bez okna nie ma czego odświeżać.
Rozdzielczość ustawia się podczas tworzenia okna, przekazując rozmiar do funkcji tworzącej ekran, np. pygame.display.set_mode((szerokość, wysokość)). To właśnie parametr rozmiaru odróżnia tworzenie okna od samej inicjalizacji modułów.
W typowej aplikacji okienkowej nie. Aby coś zobaczyć na ekranie, musisz mieć utworzone okno/ekran i potem odświeżać obraz w pętli. Bez kroku tworzącego ekran (np. set_mode) możesz wykonywać obliczenia, ale nie uzyskasz widocznego rezultatu w oknie.
Najczęściej: (1) inicjalizacja biblioteki, (2) utworzenie okna, (3) pętla zdarzeń, (4) rysowanie na ekranie, (5) odświeżanie obrazu. W praktyce krok (2) realizuje wywołanie tworzące ekran, a krok (5) to update/flip.
To technologie historyczne, niewspierane i nieużywane w typowych współczesnych projektach. W praktyce i w nauce spotyka się dziś inne języki i biblioteki graficzne. Na egzaminie sensownie jest sprawdzać narzędzia aktualnie wykorzystywane do tworzenia aplikacji.
info

To pytanie poprawnie rozwiązuje 56% zdających egzamin. średnie

Specjaliści zwracają uwagę: "Wywołanie pygame.display.set_mode() tworzy okno (i zwraca powierzchnię ekranu do rysowania)."

Źródła:

  • Pygame documentation: pygame.display.set_mode — https://www.pygame.org/docs/ref/display.html#pygame.display.set_mode (accessed 2026-03-01)
  • Pygame documentation: pygame.display.update — https://www.pygame.org/docs/ref/display.html#pygame.display.update (accessed 2026-03-01)
  • Pygame documentation: pygame.init — https://www.pygame.org/docs/ref/pygame.html#pygame.init (accessed 2026-03-01)

Materiały:

  • Dokumentacja Pygame: moduł pygame.display (set_mode, update, init)
  • Krótkie tutoriale: minimalna aplikacja Pygame (pętla zdarzeń + wyświetlanie)
  • Materiały o podstawach grafiki 2D: powierzchnia ekranu, buforowanie, odświeżanie

Aktualizacja pytania: 03.04.2026



Aktualizacja pytania: 03.04.2026
📡 Brak połączenia internetowego