Costruisci un simulatore di rotolamento da dadi in Python

Costruisci un simulatore di rotolamento da dadi in Python
I dadi sono un semplice cubo che genera qualsiasi numero da 1 a 6 e il simulatore di dadi è un modello di computer che fa lanciare i dadi per l'utente. Un simulatore di rotolamento da dadi può essere implementato in diversi modi da Python. Per creare sei immagini che verranno utilizzate nel simulatore. Il modulo cuscino di Python viene utilizzato per visualizzare qualsiasi immagine in Python che non è installata per impostazione predefinita. Il simulatore di rotolamento dei dadi può essere implementato senza GUI e GUI, come mostrato in questo tutorial.

Installazione del modulo di elaborazione delle immagini:

Il modulo di elaborazione delle immagini richiederà se si desidera creare il simulatore di rotolamento dei dadi con GUI. Esegui i seguenti comandi dal terminale per aggiornare il PIP e installare il modulo cuscino.

$ Python3 -M Pip Installa -PIP AGGIORNAMENTO
$ Python3 -M Pip Installa -cuscino per aggiornare

Esempio-1: creazione di un semplice simulatore di rotolamento da dadi da dadi

Un semplice simulatore di rotolamento da dadi può essere creato utilizzando il modulo casuale Python in questo tutorial. Questo script genererà l'output dei dadi nel terminale. Quindi, non viene utilizzato alcun modulo di elaborazione delle immagini nello script. Una variabile denominata dado è usato per prendere qualsiasi numero da 1 a 6 in modo casuale. IL tira i dadi() La funzione è definita qui per generare l'output in base al valore casuale. L'infinito durante il ciclo viene utilizzato nello script per lanciare i tempi infiniti di dadi fino a quando l'utente non digita qualcosa senza "y".

# Importa il modulo casuale
importare casuali
# Definisci Infinite Loop
mentre è vero:
# Genera un numero casuale tra 1 e 6
dadi = casuale.Randint (1, 6)
# Definire la funzione per stampare l'output in base al valore dei dadi
Def roll_the_dice (dadi):
switcher =
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]"

restituire switcher.Ottieni (dadi)
# Chiama la funzione
print (roll_the_dice (dadi))
# Chiedi all'utente di lanciare di nuovo i dadi
Risposta = input ("Vuoi lanciare di nuovo i dadi (y/n)? : ")
# Termina il ciclo se l'utente digita qualcosa senza 'y'
Se rispondi != 'y':
uscita (0)

Produzione:

L'output dello script sopra varierà in ogni iterazione del loop per l'uso di numeri interi casuali. Nel seguente output, 5 viene generato nella prima iterazione del loop visualizzato usando 5 zeri. Successivamente, l'utente digitato 'y' Per continuare il ciclo e 4 ha generato nella seconda iterazione del ciclo e ha mostrato il valore usando gli zeri come prima. Lo script è terminato quando l'utente tipi 'N'.

Esempio-2: crea un simulatore di rotolamento da dadi con immagini

È necessario creare sei immagini da dadi prima di eseguire lo script dell'esempio. È possibile creare le immagini utilizzando qualsiasi applicazione di creazione di immagini. Le seguenti sei immagini sono state create da utilizzare nella sceneggiatura di questo esempio. Tieni le immagini nella stessa posizione in cui creerai il file Python per implementare il simulatore.

Il modo di creare un simulatore di rotolamento da dadi con GUI è mostrato nella seguente sceneggiatura. Esistono molti moduli in Python per creare applicazioni GUI. Il modulo Tkinter viene utilizzato in questo script per implementare il simulatore di rotolamento dei dadi basato sulla GUI. Immagine E Imagetk I moduli vengono utilizzati nello script per visualizzare le immagini dei dadi. IL casuale Il modulo viene utilizzato per selezionare l'immagine dei dadi in modo casuale. All'inizio dello script, l'oggetto Tkinter ha creato per definire la dimensione e la posizione della finestra in cui verrà visualizzata l'immagine dei dadi. Qui, la posizione della finestra è stata impostata centralmente. Successivamente, una variabile di elenco ha dichiarato con i nomi delle immagini a sei dadi. casuale.La funzione Choice () viene utilizzata per selezionare casualmente un indice del nome dell'immagine dall'elenco e ottenere il nome dell'immagine in base al valore dell'indice. espandere = true ha usato nella funzione pack () per aggiungere spazio extra quando si aggiunge un widget nella finestra. Un'etichetta è stata aggiunta nella finestra per visualizzare l'immagine dei dadi e un pulsante è stato aggiunto nella finestra per visualizzare l'immagine successiva da dadi. IL tira i dadi() La funzione si è associata al pulsante per generare l'immagine dei dadi successivi. Questa funzione verrà chiamata quando l'utente premi o fa clic su 'TIRA I DADI' pulsante.

# Importa modulo tkinter
Importa tkinter
# Importa i moduli immagine e ImageTK
Dall'immagine di importazione PIL, ImageTK
# Importa il modulo casuale
importare casuali
# Definisci oggetto per visualizzare la finestra principale dell'applicazione
Win = tkinter.TK ()
# Imposta il titolo della finestra principale
vincita.Titolo ('Rolling Dice')
# Imposta l'altezza e la larghezza della finestra principale
vincita.geometria ('350x280')
# Imposta la posizione della finestra
vincita.Eval ('TK :: PLACEWINDOW . centro')
# Defini dell'elenco con i nomi delle immagini a sei dadi
dice_images = ['d1.png ',' d2.png ',' d3.png ',' d4.png ',' d5.png ',' d6.png ']
# Genera qualsiasi indice entro 0 a 6 in modo casuale per ottenere l'immagine dei dadi corrente
IMG = ImageTK.Fotoimage (immagine.aperto (casuale.scelta (dice_images)))
# Definisci l'etichetta per visualizzare l'immagine selezionata
lbl_image = tkinter.Etichetta (Win, Image = IMG)
lbl_image.immagine = img
# Imposta il widget dell'etichetta all'interno della finestra Parent
lbl_image.pacchetto (espandere = true)
# Definisci la funzione per modificare l'immagine dei dadi quando si fa clic sul pulsante
Def roll_the_dice ():
IMG = ImageTK.Fotoimage (immagine.aperto (casuale.scelta (dice_images)))
# Aggiorna immagine
lbl_image.configure (image = img)
# Mantieni un riferimento
lbl_image.immagine = img
"
Pulsante Definisci, imposta il testo del pulsante e imposta il comando
Per chiamare la funzione roll_the_dice ()
"
btn = tkinter.Button (Win, text = 'Roll the Dice', Command = roll_the_Dice)
# Imposta il pulsante all'interno della finestra Parent
btn.pacchetto (espandere = true)
# Chiama il mainloop di tkinter per aprire la finestra principale
vincita.mainloop ()

Produzione:

Come l'esempio precedente, l'immagine dei dadi verrà selezionata in modo casuale ogni volta che verrà premuto il pulsante. Nel seguente output, l'immagine dei dadi di sei è stata generata dopo aver eseguito lo script.

L'immagine dei dadi di tre è stata generata dopo aver premuto il pulsante.

Conclusione:

In questo tutorial sono stati spiegati due modi diversi per creare un simulatore di rotolamento da dadi usando Python Script. Aiuterà i lettori a sapere come questo tipo di applicazione può essere implementato in Python.