Python

Construire un simulateur de lancer de dés en Python

Construire un simulateur de lancer de dés en Python
Le dé est un simple cube qui génère n'importe quel nombre de 1 à 6, et le simulateur de dés est un modèle informatique qui lance les dés pour l'utilisateur. Un simulateur de lancer de dés peut être implémenté de différentes manières par Python. Six images seront nécessaires pour créer qui seront utilisées dans le simulateur. Le module Pillow de Python est utilisé pour afficher toute image en Python qui n'est pas installée par défaut. Le simulateur de lancer de dés peut être implémenté sans interface graphique ni interface graphique, comme indiqué dans ce didacticiel.

Installation du module de traitement d'images :

Le module de traitement d'image sera nécessaire si vous souhaitez créer le simulateur de lancer de dés avec l'interface graphique. Exécutez les commandes suivantes à partir du terminal pour mettre à jour le pip et installer le module Pillow.

$ python3 -m pip install --upgrade pip
$ python3 -m pip install --upgrade Oreiller

Exemple 1 : Création d'un simulateur de lancer de dés simple

Un simple simulateur de lancer de dés peut être créé à l'aide du module aléatoire Python dans ce tutoriel. Ce script générera la sortie des dés dans le terminal. Ainsi, aucun module de traitement d'image n'est utilisé dans le script. Une variable nommée est utilisé pour prendre n'importe quel nombre de 1 à 6 au hasard. le lancer les dés() la fonction est définie ici pour générer la sortie en fonction de la valeur aléatoire. La boucle while infinie est utilisée dans le script pour lancer les dés une infinité de fois jusqu'à ce que l'utilisateur tape quelque chose sans 'y'.

# Importer un module aléatoire
importer au hasard
# Définir une boucle infinie
tant que vrai :
# Générer un nombre aléatoire entre 1 et 6
dés = aléatoire.randint(1, 6)
# Définir la fonction pour imprimer la sortie en fonction de la valeur des dés
def roll_the_dice(dice):
commutateur =
1 : "[ ]\n| 0 |\n[ ]",
2: "[0 ]\n| |\n[ 0]",
3: "[0 ]\n| 0 |\n[ 0]",
4: "[0 0]\n| |\n[0 0]",
5: "[0 0]\n| 0 |\n[0 0]",
6 : "[ 0 0 ]\n| 0 0 |\n[ 0 0 ]"

inverseur de retour.obtenir (dé)
# Appeler la fonction
print(roll_the_dice(dice))
# Demander à l'utilisateur de relancer les dés
answer = input("Voulez-vous relancer les dés (o/n)? : ")
# Termine la boucle si l'utilisateur tape quelque chose sans 'y'
si réponse != 'y' :
sortie(0)

Production:

La sortie du script ci-dessus variera à chaque itération de la boucle pour l'utilisation de nombres entiers aléatoires. Dans la sortie suivante, 5 est généré dans la première itération de la boucle affichée à l'aide de 5 zéros. Ensuite, l'utilisateur a tapé 'ou' pour continuer la boucle, et 4 a généré dans la deuxième itération de la boucle et affiché la valeur en utilisant des zéros comme avant. Le script s'est terminé lorsque l'utilisateur tape 'n'.

Exemple-2 : Créer un simulateur de lancer de dés avec des images

Vous devez créer six images de dés avant d'exécuter le script de l'exemple. Vous pouvez créer les images en utilisant n'importe quelle application de création d'images. Les six images suivantes ont été créées pour être utilisées dans le script de cet exemple. Gardez les images au même endroit où vous allez créer le fichier python pour implémenter le simulateur.

La façon de créer un simulateur de lancer de dés avec GUI est illustrée dans le script suivant. De nombreux modules existent en Python pour créer des applications GUI. Le module Tkinter est utilisé dans ce script pour implémenter un simulateur de lancer de dés basé sur une interface graphique. Image et ImageTk les modules sont utilisés dans le script pour afficher des images de dés. le Aléatoire module est utilisé pour sélectionner l'image des dés au hasard. Au début du script, l'objet Tkinter a créé pour définir la taille de la fenêtre et la position où l'image du dé sera affichée. Ici, la position de la fenêtre a été réglée au centre. Ensuite, une variable de liste a déclaré avec les six noms d'image de dés. Aléatoire.La fonction choice() est utilisée pour sélectionner au hasard un index du nom de l'image dans la liste et obtenir le nom de l'image en fonction de la valeur de l'index. expand=True a été utilisé dans la fonction pack() pour ajouter de l'espace supplémentaire lors de l'ajout d'un widget dans la fenêtre. Une étiquette a été ajoutée dans la fenêtre pour afficher l'image du dé, et un bouton a été ajouté dans la fenêtre pour afficher l'image du dé suivant. le lancer les dés() fonction a associé au bouton pour générer la prochaine image de dés. Cette fonction sera appelée lorsque l'utilisateur appuiera ou cliquera sur le 'LANCER LES DÉS' bouton.

# Importer le module Tkinter
importer tkinter
# Importer des modules Image et ImageTk
à partir d'une image d'importation PIL, ImageTk
# Importer un module aléatoire
importer au hasard
# Définir l'objet pour afficher la fenêtre principale de l'application
gagner = tkinter.Tk()
# Définir le titre de la fenêtre principale
gagner.title('Rolling Dice')
# Définir la hauteur et la largeur de la fenêtre principale
gagner.géométrie('350x280')
# Définir la position de la fenêtre
gagner.eval('tk::PlaceWindow . centre')
# Définir la liste avec les six noms d'images de dés
dés_images = ['d1.png', 'd2.png', 'd3.png', 'd4.png', 'd5.png', 'd6.png']
# Générez n'importe quel index de 0 à 6 au hasard pour obtenir l'image actuelle du dé
img= ImageTk.PhotoImage(Image.ouvert (aléatoire.choix(dice_images)))
# Définir l'étiquette pour afficher l'image sélectionnée
lbl_image = tkinter.Étiquette(gagner, image=img)
lbl_image.image = img
# Définir le widget d'étiquette dans la fenêtre parent
lbl_image.pack (développer = vrai)
# Définir la fonction pour changer l'image des dés lorsque le bouton est cliqué
def roll_the_dice() :
img= ImageTk.PhotoImage(Image.ouvert (aléatoire.choix(dice_images)))
# mettre à jour l'image
lbl_image.configurer(image=img)
# garder une référence
lbl_image.image = img
"
Définir le bouton, définir le texte du bouton et définir la commande
pour appeler la fonction roll_the_dice()
"
btn = tkinter.Button(win, text='ROLL THE DICE', command=roll_the_dice)
# Définir le bouton à l'intérieur de la fenêtre parent
btn.pack (développer = vrai)
# Appelez la boucle principale de Tkinter pour ouvrir la fenêtre principale
gagner.boucle principale()

Production:

Comme dans l'exemple précédent, l'image du dé sera sélectionnée au hasard à chaque pression sur le bouton. Dans la sortie suivante, l'image du dé de six a été générée après l'exécution du script.

L'image de dés de trois a été générée après avoir appuyé sur le bouton.

Conclusion:

Deux manières différentes de créer un simulateur de lancer de dés à l'aide d'un script Python ont été expliquées dans ce tutoriel. Cela aidera les lecteurs à savoir comment ce type d'application peut être implémenté en Python.

Top 10 des jeux à jouer sur Ubuntu
La plate-forme Windows a été l'une des plates-formes dominantes pour les jeux en raison du pourcentage énorme de jeux qui se développent aujourd'hui p...
5 meilleurs jeux d'arcade pour Linux
De nos jours, les ordinateurs sont des machines sérieuses utilisées pour les jeux. Si vous ne pouvez pas obtenir le nouveau score élevé, vous saurez c...
Bataille pour Wesnoth 1.13.6 Développement publié
Bataille pour Wesnoth 1.13.6 publiée le mois dernier, est la sixième version de développement de la 1.13.x series et il apporte un certain nombre d'am...