Oggi ci accingiamo a fare un gioco di indovinare interattivo in Python.
Questo sarà un semplice gioco di indovinelli in cui il computer genererà un numero casuale compreso tra 1 e 10 e l’utente deve indovinarlo in 5 tentativi.
In base alla congettura dell’utente il computer darà vari suggerimenti se il numero è alto o basso. Quando l’utente indovina corrisponde al numero, il computer stamperà la risposta insieme al numero di tentativi.
Ecco come appare il gioco in azione,
Hello, What's your name?Abhijeetokay! Abhijeet I am Guessing a number between 1 and 10:2Your guess is too low4Your guess is too low6You guessed the number in 3 tries!
In questo articolo, vi guideremo attraverso ogni passo di fare questo gioco interattivo indovinare in Python.
Ora, apri il tuo editor di testo preferito e inizia a codificare.
In primo luogo, creeremo un file un nuovo file denominato game.py
dal nostro editor di testo.
Per generare un numero casuale useremo un modulo Python chiamato random
per utilizzare questo modulo nel nostro programma, dobbiamo prima importarlo.
import random
number = random.randint(1, 10)
Ora chiederemo all’utente di inserire il suo nome e memorizzarlo in una variabile denominata player_name
.
player_name = input("Hello, What's your name?")
Nel passaggio successivo, creeremo una variabile denominata number_of_guesses
e assegneremo 0 ad essa. Più tardi aumenteremo questo valore su ogni iterazione del ciclo while.
Infine, prima di costruire il ciclo while, stamperemo una stringa che include il nome del giocatore.
print('okay! '+ player_name+ ' I am Guessing a number between 1 and 10:')
Ora progettiamo il ciclo while.
while number_of_guesses < 5: guess = int(input()) number_of_guesses += 1 if guess < number: print('Your guess is too low') if guess > number: print('Your guess is too high') if guess == number: break
Nella prima riga, stiamo definendo l’espressione di controllo del ciclo while. Il nostro gioco darà all’utente 5 tentativi di indovinare il numero, quindi meno di 5 perché abbiamo già assegnato il number_of_guesses variable
a 0.
All’interno del ciclo, stiamo prendendo l’input dall’utente e memorizzandolo nella variabile guess. Tuttavia, l’input dell’utente che stiamo ricevendo dall’utente è un oggetto string e per eseguire operazioni matematiche su di esso dobbiamo prima convertirlo in un numero intero che può essere fatto dal metodo inbuilt int() di Python.
Nella riga successiva, stiamo incrementando il valore della variabile number_of_guesses
di 1.
Sotto di esso, abbiamo 3 dichiarazioni condizionali.
- Nel primo, se l’istruzione stiamo confrontando se l’ipotesi è inferiore al numero generato se questa istruzione valuta true, stampiamo l’ipotesi corrispondente.
- Allo stesso modo, stiamo controllando se l’ipotesi è maggiore del numero generato.
- L’istruzione if finale ha la parola chiave break, che terminerà completamente il ciclo, quindi quando l’ipotesi è uguale al ciclo numerico generato viene terminato.
Sotto il ciclo while, dobbiamo aggiungere un’altra coppia di istruzioni sulle condizioni,
if guess == number: print('You guessed the number in ' + str(number_of_guesses) + ' tries!')else: print('You did not guess the number, The number was ' + str(number))
Qui stiamo prima verificando se l’utente ha indovinato il numero o meno. se lo hanno fatto, allora stamperemo un messaggio per loro insieme al numero di tentativi.
Se il giocatore non è riuscito a indovinare il numero alla fine, lo stamperemo insieme a un messaggio.
Se ci hai seguito, allora questo è come dovrebbe essere il tuo programma:
import randomnumber = random.randint(1, 10)player_name = input("Hello, What's your name?")number_of_guesses = 0print('okay! '+ player_name+ ' I am Guessing a number between 1 and 10:')while number_of_guesses < 5: guess = int(input()) number_of_guesses += 1 if guess < number: print('Your guess is too low') if guess > number: print('Your guess is too high') if guess == number: breakif guess == number: print('You guessed the number in ' + str(number_of_guesses) + ' tries!')else: print('You did not guess the number, The number was ' + str(number))
Ora corriamo il nostro gioco!
Per eseguire il gioco, digita questo nel tuo terminale python game.py
e premi Invio.
Questo è stato, se sei rimasto bloccato da qualche parte prendi il modulo di codice Github repo