I lettori come te aiutano a sostenere MUO. Quando effettui un acquisto utilizzando i link sul nostro sito, potremmo guadagnare una commissione di affiliazione. Per saperne di più.

Se stai cercando una distrazione divertente, il gioco di parole è una buona opzione, sia per giocare che per programmare. Alimentato dal modulo Tkinter di Python, puoi creare e giocare a questo gioco d'infanzia in una comoda app GUI.

Il programma visualizza una parola confusa che è necessario riorganizzare nella sua forma originale. Se sei bloccato, puoi fare clic sul pulsante Suggerimento per svelare una lettera alla volta. Indovina la parola giusta e vinci alla grande!

Il modulo Random e Tkinter

Il modulo Random è un modulo Python integrato utilizzato per generare numeri pseudo-casuali. Con questo, puoi generare numeri casuali, scegliere elementi casuali da un elenco, mescolare il contenuto di un elenco e altro ancora.

Questo modulo può aiutarti a creare diversi tipi di app, tra cui una simulazione del lancio dei dadi, un mescolatore di elenchi o un

instagram viewer
generatore di password casuali. Puoi anche usarlo per creare giochi come grillo a mano e indovinare il numero.

Tkinter ti consente di creare applicazioni desktop. Offre una varietà di widget come pulsanti, etichette e caselle di testo che semplificano lo sviluppo di app. Per installare Tkinter, apri un terminale ed esegui:

pip installa tkinter

Come creare un gioco Word Jumble usando Python

Puoi trovare il codice sorgente di Word Jumble Game usando Python in questo Deposito GitHub.

Importa i moduli Tkinter e Random. Inizializza l'istanza Tkinter e visualizza la finestra principale. Imposta le dimensioni in pixel, il titolo e il colore di sfondo della finestra.

da tkinter importare *
da casuale importare scelta
da casuale importare mescolare

radice = Tk()
radice.titolo("Gioco di parole confuse")
radice.geometria("700x500")
root.configure (sfondo='acqua')

Definire un widget etichetta per visualizzare la parola confusa. Specifica la finestra principale in cui desideri inserirla, il testo che dovrebbe visualizzare, lo stile del carattere e il colore di sfondo. Organizza il widget e aggiungi un po' di padding ad esso.

Definire una funzione, mescolatore. Configura l'etichetta del suggerimento per visualizzare inizialmente una stringa vuota e imposta la variabile del suggerimento globale su zero. Elimina qualsiasi contenuto dovuto all'esecuzione precedente del programma e visualizza invece una stringa di immissione.

my_label = Etichetta (root, text="", carattere=("Arial", 48), bg='acqua')
mia_etichetta.pack (pady=20)

defmescolatore():
hint_label.config (testo='')
globale hint_count
hint_count = 0
voce_risposta.delete(0, FINE)
answer_label.config (testo='', bg='acqua')

Definisci un elenco di parole che serviranno da set di dati per il gioco di parole confuse. Seleziona una parola a caso dall'elenco e fai un elenco delle sue singole lettere. Mescola l'elenco e riformatta la parola ripetendola e memorizzandola in una stringa. Visualizza la parola confusa tramite l'etichetta sullo schermo.

 frutti = ['mela', 'banana', 'fragola', 'anguria', 'kiwi']
globale parola
parola = scelta (frutta)
break_apart_word = lista (parola)
mescola (break_apart_word)
globale parola_mescolata
mescolato_parola = ''

per lettera In break_apart_word:
parola_mescolata += lettera

mia_etichetta.config (testo=parola_mescolata)

Prova a caricare un insieme di parole da un file come estensione di questo progetto. Il file dizionario—/usr/share/dict/words su Linux/macOS—è un'ottima fonte di parole.

Definire una funzione, risposta. Se la parola è uguale all'input da parte dell'utente, visualizza un messaggio vincente in colore verde. Altrimenti, mostra che era la risposta sbagliata in rosso.

defrisposta():
Se parola == entry_answer.get():
answer_label.config (testo="Risposta corretta!", bg='acqua', fg='verde')
altro:
answer_label.config (testo="Risposta sbagliata, riprova.", bg='acqua', fg='rosso')

Definire una funzione, suggerimento, per ispezionare il globale hint_count. Se il conteggio è inferiore alla lunghezza della parola, visualizza la lettera successiva della risposta corretta. Incrementa il conteggio della lettera di suggerimento in modo che la prossima volta che la funzione viene eseguita, il programma visualizzerà la lettera successiva.

defsuggerimento(contare):
globale hint_count
hint_count = conteggio
word_length = len (parola)

Se conteggio hint_label.config (testo=F'{etichetta_suggerimento["testo"]}{parola[conteggio]}', bg='acqua')
hint_count += 1

Definire un widget Entry per accettare l'input dall'utente. Specifica la finestra principale in cui vuoi posizionare questo widget, insieme al suo stile di carattere, e organizzalo dando un po' di riempimento per avere ampio spazio.

Definire una cornice per i pulsanti. Una cornice funge da contenitore che dirige il posizionamento di altri widget. Organizza il layout e fornisce il riempimento utilizzando sezioni rettangolari sullo schermo. Imposta la finestra principale in cui desideri posizionare la cornice insieme al colore di sfondo.

entry_answer = Voce (root, font=("Arial", 24))
entry_answer.pack (pady=20)

button_frame = Cornice (radice, bg='acqua')
button_frame.pack (pady=20)

Dichiara tre pulsanti: uno per visualizzare la risposta corretta, uno per scegliere un'altra parola e l'altro per visualizzare i suggerimenti. Specifica la cornice in cui desideri posizionare ciascun pulsante e il testo che deve visualizzare. Passa anche la funzione da eseguire quando l'utente fa clic su di essa, il colore di sfondo, la larghezza e la dimensione del carattere.

Usa il griglia() manager per posizionare questi pulsanti in una riga e tre colonne diverse. Puoi specificare la spaziatura interna per aggiungere spazio tra i pulsanti.

answer_button = Pulsante (button_frame, text="Risposta", comando=risposta, bg='arancia', larghezza=8, carattere=10)
answer_button.grid (riga=0, colonna=0, padx=10)

my_button = Pulsante (button_frame, text="Scegli un'altra parola", comando=shuffler, bg='arancia', larghezza=15, carattere=10)
my_button.grid (riga=0, colonna=1, padx=10)

hint_button = Pulsante (button_frame, text="Suggerimento", comando=lambda: suggerimento (hint_count), bg='arancia', larghezza=5, carattere=10)
hint_button.grid (riga=0, colonna=2, padx=10)

Crea etichette per la risposta e il suggerimento. Specifica la finestra principale in cui desideri posizionare le etichette, il testo che deve visualizzare e lo stile del carattere e organizzalo utilizzando pacchetto(). Passa un valore di riempimento, pady, per un migliore posizionamento delle etichette.

answer_label = Etichetta (root, text='', carattere=("Arial", 22))
answer_label.pack (pady=20)

hint_label = Etichetta (root, text='', carattere=("Arial", 22), bg='acqua')
hint_label.pack (pady=10)

Chiama la funzione shuffler() per configurare il gioco. Quindi chiama ciclo principale() per eseguire il ciclo di eventi Tkinter e ascoltare gli eventi (come le pressioni dei pulsanti) finché non si chiude la finestra.

mescolatore()
root.mainloop()

Metti insieme tutto il codice e gioca a Word Jumble Game sempre e ovunque.

Esempio di output del gioco Word Jumble

Durante l'esecuzione del programma, viene visualizzata una parola mescolata insieme ai pulsanti Rispondi, Scegli un'altra parola e Suggerimento. Facendo clic sul Suggerimento pulsante, il programma visualizza una per una le lettere della risposta corretta. Se inserisci la risposta corretta, il programma visualizza il messaggio vincente in verde.

Se indovini la risposta sbagliata, il programma ti chiede di riprovare in rosso.

Giochi di parole con Python

Usando Python puoi sviluppare una vasta ed entusiasmante gamma di giochi di parole. Gli esempi includono Scrabble, Hangman, cruciverba, Mad Libs e anagrammi. Questi giochi di parole possono essere basati su terminale o GUI, come hai visto qui.

Con Tkinter, puoi creare giochi GUI molto facilmente. Tutto quello che devi fare è importare il modulo, generare una finestra, aggiungere widget ed eseguire il ciclo di eventi. Per giochi più avanzati, puoi esplorare i moduli Pygame, Kivy e Panda 3D.