Maison  >  Article  >  développement back-end  >  Comment créer un simple jeu de tic-tac-toe basé sur Python

Comment créer un simple jeu de tic-tac-toe basé sur Python

WBOY
WBOYavant
2023-05-19 14:29:371454parcourir

Cadre de base

from tkinter import *  
import tkinter.messagebox as msg  
  
root = Tk()  
root.title('井字棋')  
# labels  
Label(root, text="player1 : X", font="times 15").grid(row=0, column=1)  
Label(root, text="player2 : O", font="times 15").grid(row=0, column=2)

Dans ce code, nous avons d'abord importé le module tkinter et le module tkinter.messagebox. Ensuite, nous créons un objet Tk nommé root et définissons son titre. Nous l'avons nommé ici Tic Tac Toe. tkinter 模块和 tkinter.messagebox 模块。然后,我们创建了一个名为 root 的 Tk 对象,并设置了它的标题。我们这里命名为井字棋。

接着,我们创建了两个 Label 对象,并将它们放置在根窗口中的第一行和第二列。Label 对象的文本分别是 player1 : X 和 player2 : O,它们的字体大小为 15 像素。

最后,我们创建了一个名为 msg 的 messagebox

Ensuite, nous créons deux objets Label et les plaçons dans la première ligne et la deuxième colonne de la fenêtre racine. Les textes des objets Label sont respectivement player1 : X et player2 : O, et leur taille de police est de 15 pixels.

Enfin, nous créons un objet messagebox nommé msg et l'affichons dans la fenêtre racine. Lorsque l'utilisateur clique sur un bouton dans la boîte de message, la boîte de message s'affiche dans la fenêtre principale de l'utilisateur afin que l'utilisateur puisse la voir. Dans cet exemple, nous affichons simplement une boîte de message.

Define Button

button1 = Button(root, width=15, font=('Times 16 bold'), height=7, command=lambda: checker(1))  
button1.grid(row=1, column=1)  
button2 = Button(root, width=15, height=7, font=('Times 16 bold'), command=lambda: checker(2))  
button2.grid(row=1, column=2)  
button3 = Button(root, width=15, height=7, font=('Times 16 bold'), command=lambda: checker(3))  
button3.grid(row=1, column=3)  
button4 = Button(root, width=15, height=7, font=('Times 16 bold'), command=lambda: checker(4))  
button4.grid(row=2, column=1)

Ce code est l'implémentation Python du composant Button dans le module Tkinter. Dans Tkinter, le widget Button peut être utilisé pour créer des boutons sur lesquels on peut cliquer en réponse aux événements utilisateur.

Nous avons déclaré neuf composants de bouton et configuré les propriétés et les méthodes de chaque composant. L'extrait de code de chaque composant Button est légèrement différent du composant Button précédent, car ce code est une application Tkinter complète, comprenant des fenêtres, des étiquettes, des boutons et d'autres widgets.

Dans notre exemple, nous utilisons le gestionnaire de mise en page Grid dans Tkinter pour organiser 9 composants Button en colonnes et définir la largeur de chaque bouton sur 15 pixels. Ce qui peut être ajusté selon les besoins, c'est la largeur du composant Button dans la fenêtre Tkinter.

Enfin, nous avons mis en place une fonction lambda pour effectuer des opérations spécifiques pour chaque composant Button. Cette fonction lambda est une fonction sans nom qui accepte un paramètre représentant le numéro du composant Button. Dans cet exemple, nous configurons une fonction lambda pour chaque composant Button afin d'appeler le composant Checker, qui est une fonction récursive qui vérifie le numéro spécifié. Pour des détails spécifiques sur la mise en œuvre du composant Checker, veuillez vous référer aux fonctions individuelles dans la documentation officielle de Tkinter.

Implémentation de la fonction

Nous n'afficherons qu'une partie du code ici, et le reste de l'écriture est le même.

if digit == 1 and digit in digits:  
digits.remove(digit)  
##player1 will play if the value of count is even and for odd player2 will play  
if count % 2 == 0:  
mark = 'X'  
panels[digit] = mark  
elif count % 2 != 0:  
mark = 'O'  
panels[digit] = mark  
  
button1.config(text=mark)  
count = count + 1  
sign = mark  
  
if (win(panels, sign) and sign == 'X'):  
msg.showinfo("Result", "Player1 wins")  
root.destroy()  
elif (win(panels, sign) and sign == 'O'):  
msg.showinfo("Result", "Player2 wins")  
root.destroy()

Notre code définit un compteur et deux marqueurs, chiffre et marque. Le compteur indique le nombre de boucles à évaluer et à effectuer l'opération correspondante.

Si le chiffre est égal à 1 et que le chiffre est en chiffres, alors le chiffre est supprimé des chiffres et l'action du joueur 1 ou 2 est décidée en fonction de la parité de comptage. Si le nombre est pair, le joueur 1 jouera au jeu, sinon le joueur 2 jouera au jeu.

Dans chaque boucle, si le reste du compte divisé par 2 est 0, alors la marque est égale à X et le panneau [chiffre] est défini sur marque. Si la marque est égale à O, définissez panel[digit] sur mark.

Ensuite, définissez la marque comme texte du composant du bouton bouton1, ajoutez le nombre par 1, définissez le signe comme marque et déterminez le gagnant du jeu en fonction de la valeur du signe. Si le joueur 1 gagne la partie, le message "Résultat" s'affiche et la fenêtre se ferme. Si le joueur 2 gagne la partie, le message "Résultat" s'affiche et la fenêtre se ferme.

Dans chaque cycle, le gagnant du jeu est déterminé en fonction de la valeur du signe. Lorsque la partie est gagnée par le joueur 1 et que le signe est égal à X, un message "Résultat" s'affichera et la fenêtre se fermera. Lorsque le joueur 2 gagne et que le signe est O, le message "Résultat" doit s'afficher et la fenêtre se fermer.

Comment créer un simple jeu de tic-tac-toe basé sur PythonEffet

🎜🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer