Spisu treści:
Wideo: Gra Python w kółko i krzyżyk: 4 kroki
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
gra w pytona w kółko i krzyżyk
ta gra jest stworzona w Pythonie, który jest językiem komputerowym
Użyłem edytora Pythona o nazwie: pycharm, możesz również użyć normalnego edytora kodu Pythona
Krok 1: Importuj
z importu tkinter *
Krok 2: Korzeń
korzeń = Tk()
root.title(" 3T TIC TAC TOE") # Tytuł
text = Entry(root, font=("ds-digital", 15)) text.pack(fill=X, padx=5, pady=5, ipadx=5, ipady=5) # Tekst
tablica = ["-", "-", "-", "-", "-", "-", "-", "-", "-"] # Deska
Krok 3: Funkcja po wstawieniu do edytora wyświetla ostrzeżenia Kliknij Warrnigs i daj Assambelowi wszystko
# Funkcje
player = przycisk "X" = stop_game = False stop_game_tie = False
def Turn(): # Drukowanie Turn text.delete(0, END) text.insert(0, KOLEJ {}'.format(player))
def Exit(): root.destroy() exit()
def Game_Over(): # Sprawdź, czy gra się skończyła Check_Winner()
if stop_game == Prawda: Hplayer() text.delete(0, END) text.insert(0, "'{}' ZWYCIĘZCA".format(player))
jeszcze: Check_Tie()
if stop_game_tie == Prawda: text.delete(0, END) text.insert(0, "ZMIANA REMISU")
def Check_Winner(): # Sprawdź, czy istnieje globalny zwycięzca stop_game
rząd_1 = tablica[0] == tablica[1] == tablica[2] != "-" rząd_2 = tablica[3] == tablica[4] == tablica[5] != "-" rząd_3 = tablica[6] == plansza[7] == plansza[8] != "-" jeśli row_1 lub row_2 lub row_3: stop_game = True
kolumna_1 = tablica[0] == tablica[3] == tablica[6] != "-" kolumna_2 = tablica[1] == tablica[4] == tablica[7] != "-" kolumna_3 = tablica[2] == plansza[5] == plansza[8] != "-" jeśli column_1 lub column_2 lub column_3: stop_game = True
przekątna_1 = plansza[0] == plansza[4] == plansza[8] != "-" przekątna_2 = plansza[2] == plansza[4] == plansza[6] != "-" jeśli przekątna_1 lub przekątna_2: stop_game = Prawda
def Check_Tie(): # Sprawdź, czy jest remis, globalny stop_game_tie
jeśli „-” nie znajduje się na tablicy: stop_game_tie = True
def Hplayer(): # Zarządzanie Turn global player
if player == "X": gracz = "O"
inaczej: gracz = "X"
def Add_Text(pos, play): # Globalny przycisk Dodaj tekst
if pos not in button i stop_game == False i stop_game_tie == False i pos != 9: Turn()
def_buttons[pos].configure(text=play) board[pos] = player
button.append(pos) Hplayer() Turn() Game_Over()
Krok 4: Ostateczny kod, który da ostateczny wygląd?
# SIATKA
def New_Match(): # Nowa funkcja przycisku meczu globalna plansza globalny gracz globalny przycisk globalny stop_game globalny stop_game_tie
button_1.configure(text="") button_2.configure(text="") button_3.configure(text="") button_4.configure(text="") button_5.configure(text="") button_6.configure(text ="") button_7.configure(text="") button_8.configure(text="") button_9.configure(text="") board = ["-", "-", "-", "-", "-", "-", "-", "-", "-"] player = "X" button = stop_game = False stop_game_tie = False Turn()
# Guziki
Zakręt()
frame = Frame(root) frame.pack(side=TOP, anchor=NW)
ramka1 = Ramka(ramka) ramka1.pack()
button_1 = Button(ramka1, tekst="", szerokość=8, wysokość=3, polecenie=lambda: Add_Text(0, player), bg = 'różowy') button_1.pack(side=LEFT)
button_2 = Przycisk(ramka1, tekst="", szerokość=8, wysokość=3, polecenie=lambda: Add_Text(1, player), bg = 'różowy') button_2.pack(side=LEFT)
button_3 = Przycisk(ramka1, tekst="", szerokość=8, wysokość=3, polecenie=lambda: Add_Text(2, player), bg = 'różowy') button_3.pack(side=LEFT)
ramka2 = Ramka(ramka) ramka2.pack()
button_4 = Przycisk(ramka2, tekst="", szerokość=8, wysokość=3, polecenie=lambda: Add_Text(3, player), bg = 'niebieski') button_4.pack(side=LEFT)
button_5 = Przycisk(ramka2, tekst="", szerokość=8, wysokość=3, polecenie=lambda: Add_Text(4, player), bg = 'niebieski') button_5.pack(side=LEFT)
button_6 = Przycisk(ramka2, tekst="", szerokość=8, wysokość=3, polecenie=lambda: Add_Text(5, player), bg = 'niebieski') button_6.pack(side=LEFT)
ramka3 = Ramka(ramka) ramka3.pack()
button_7 = Przycisk(ramka3, tekst="", szerokość=8, wysokość=3, polecenie=lambda: Add_Text(6, player), bg = 'pomarańczowy') button_7.pack(side=LEFT)
button_8 = Przycisk(ramka3, tekst="", szerokość=8, wysokość=3, polecenie=lambda: Add_Text(7, player), bg = 'pomarańczowy') button_8.pack(side=LEFT)
button_9 = Przycisk(ramka3, tekst="", szerokość=8, wysokość=3, polecenie=lambda: Add_Text(8, player), bg = 'pomarańczowy') button_9.pack(side=LEFT)
ramka4 = Ramka(ramka) ramka4.pack()
button_clear = Button(ramka4, tekst="NOWY MECZ", szerokość=13, wysokość=3, polecenie=lambda: New_Match(), bg = 'fioletowy', pierwszy plan = 'czerwony') button_clear.pack(side=LEFT)
exit_button = Button(ramka4, tekst="EXIT", szerokość=12, wysokość=3, polecenie=lambda: Exit(), bg = 'zielony', pierwszy plan = 'pomarańczowy') exit_button.pack(side=LEWO)
def_buttons = [button_1, button_2, button_3, button_4, button_5, button_6, button_7, button_8, button_9]
root.mainloop()