Maison > Article > développement back-end > Comment créer un simple jeu de tic-tac-toe basé sur Python
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
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 Buttonbutton1 = 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 fonctionNous 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.
Effet
🎜🎜🎜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!