Rozdział 17 · Projekt: „Kółko-krzyżyk”
Tworzenie zmiennych globalnych
gra potrzebuje pamięci między ruchami — ustaw zmienne stanu i zbudujmy pole przycisków w pętli.
Tworzenie zmiennych globalnych
grze musisz pamiętać o swoim stanie między ruchami – czyja jest kolej, czy gra się skończyła i Same przyciski pola zmieniają tekst:
globalnye_peremennye.py
tekuschij_igrok = "X"
polya = [] # lista z 9 przycisków pola
igra_okonchena = False
Tworzenie przycisków
Pole 3×3 to dziewięć przycisków rozmieszczonych przez grid()
(rozdział 16). Stworzymy je pętlą, a nie dziewięcioma identycznymi łańcuch znaków kawałkami kodu ręcznie (rozdział 10):
sozdaem_knopki.py
pole_frame = tk.Frame(root)
pole_frame.grid(row=1, column=0, columnspan=3)
for indeks in range(9):
knopka = tk.Button(
pole_frame,
text="",
font=("Arial", 24, "bold"),
width=3, height=1,
)
knopka.grid(row=indeks // 3, column=indeks % 3)
polya.append(knopka)
indeks // 3 i indeks % 3 — współrzędne z problemu
Liczby od 0 do 8 powinny być przekształcone w wiersz i kolumnę w Tabeli 3×3. Dzielenie liczb całkowitoliczbowych
// (rozdział 5) podaje numer linii (0,0,0,1,1,1,2,2,2), oraz pozostałe % to liczba kolumn (0,1,2,0,1,2,0,1,2).
Praktyka: zmienne stanowe i pole z przycisków
Moduł tkinter otwiera natywne okno Python — wykonaj lokalnie w VS Code, PyCharm lub Jupyter
Praktyka kursuje lokalnie