idag ska vi göra ett interaktivt gissningsspel i Python.
detta kommer att bli en enkel gissningslek där datorn kommer att generera ett slumptal mellan 1 och 10, och användaren måste gissa det i 5 försök.
baserat på användarens gissning kommer datorn att ge olika tips om numret är högt eller lågt. När användaren gissar matchar numret kommer datorn att skriva ut svaret tillsammans med antalet försök.
så här ser spelet ut i aktion,
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!
i den här artikeln guidar vi dig genom varje steg för att göra detta interaktiva gissningsspel i Python.
öppna nu din favorittextredigerare och börja koda.
först skapar vi en fil en ny fil med namnet game.py
från vår textredigerare.
för att generera ett slumptal använder vi en Python-modul med namnet random
för att använda den här modulen i vårt program måste vi först importera den.
import random
number = random.randint(1, 10)
nu uppmanar vi användaren att ange sitt namn och lagra det till en variabel som heter player_name
.
player_name = input("Hello, What's your name?")
i nästa steg skapar vi en variabel med namnet number_of_guesses
och tilldelar 0 till den. Senare kommer vi att öka detta värde på varje iteration av While loop.
slutligen, innan vi konstruerar while-slingan, kommer vi att skriva ut en sträng som innehåller spelarnamnet.
print('okay! '+ player_name+ ' I am Guessing a number between 1 and 10:')
låt oss nu designa while-slingan.
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
i den första raden definierar vi det kontrollerande uttrycket för while-slingan. Vårt spel ger användaren 5 försök att gissa numret, därmed mindre än 5 Eftersom vi redan har tilldelat number_of_guesses variable
till 0.
inom slingan tar vi inmatningen från användaren och lagrar den i guess-variabeln. Användarinmatningen vi får från användaren är dock ett strängobjekt och för att utföra matematiska operationer på det måste vi först konvertera det till ett heltal som kan göras med Pythons inbyggda int () – metod.
i nästa rad ökar vi värdet på number_of_guesses
variabel med 1.
under det har vi 3 villkorliga uttalanden.
- i det första, if-uttalandet jämför vi om gissningen är mindre än det genererade numret om detta uttalande utvärderas till sant, skriver vi ut motsvarande gissning.
- på samma sätt kontrollerar vi om gissningen är större än det genererade numret.
- det slutliga if-uttalandet har brytnyckelordet, vilket kommer att avsluta slingan helt, så när gissningen är lika med den genererade talslingan avslutas.
under while-slingan måste vi lägga till ytterligare ett par villkor,
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))
här verifierar vi först om användaren har gissat numret eller inte. om de gjorde det kommer vi att skriva ut ett meddelande för dem tillsammans med antalet försök.
om spelaren inte kunde gissa numret i slutet kommer vi att skriva ut numret tillsammans med ett meddelande.
om du har följt oss, så är det så ditt program ska se ut:
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))
låt oss nu köra vårt spel!
för att köra spelet, skriv detta i din terminal python game.py
och tryck på Enter.
detta var det, om du fastnade någonstans ta tag i kodformuläret Github repo