i dag skal vi lave et interaktivt gættespil i Python.
dette bliver et simpelt gættespil, hvor computeren genererer et tilfældigt tal mellem 1 og 10, og brugeren skal gætte det i 5 forsøg.
baseret på brugerens gæt computer vil give forskellige hints, hvis antallet er høj eller lav. Når brugeren gætte matcher nummeret computer vil udskrive svaret sammen med antallet af forsøg.
Sådan ser spillet ud 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 denne artikel vil vi guide dig gennem hvert trin i at lave dette interaktive gættespil i Python.
åbn nu din foretrukne teksteditor og start kodning.
først opretter vi en fil en ny fil med navnet game.py
fra vores teksteditor.
for at generere et tilfældigt tal bruger vi et Python-modul med navnet random
for at bruge dette modul i vores program skal vi først importere det.
import random
number = random.randint(1, 10)
nu vil vi bede brugeren om at indtaste sit navn og gemme det til en variabel med navnet player_name
.
player_name = input("Hello, What's your name?")
i det næste trin opretter vi en variabel med navnet number_of_guesses
og tildeler 0 til den. Senere vil vi øge denne værdi på hver iteration af Mens loop.
endelig, inden vi konstruerer Mens loop, udskriver vi en streng, der inkluderer spillernavnet.
print('okay! '+ player_name+ ' I am Guessing a number between 1 and 10:')
lad os nu designe Mens loop.
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ørste linje definerer vi det kontrollerende udtryk for mens-sløjfen. Vores spil vil give brugeren 5 forsøg på at gætte nummeret, dermed mindre end 5, fordi vi allerede har tildelt number_of_guesses variable
til 0.
inden for sløjfen tager vi input fra brugeren og gemmer det i guess-variablen. Den brugerinput, vi får fra brugeren, er imidlertid et strengobjekt, og for at udføre matematiske operationer på det skal vi først konvertere det til et heltal, som kan gøres ved Pythons indbyggede int () – metode.
i den næste linje øger vi værdien af number_of_guesses
variabel med 1.
under det har vi 3 betingede udsagn.
- i den første, hvis sætning sammenligner vi, hvis gættet er mindre end det genererede tal, hvis denne erklæring evalueres til sand, udskriver vi det tilsvarende Gæt.
- tilsvarende kontrollerer vi, om gættet er større end det genererede nummer.
- den endelige if-sætning har break-nøgleordet, som afslutter sløjfen helt, så når gættet er lig med det genererede tal, bliver sløjfen afsluttet.
under mens-sløjfen skal vi tilføje et andet par tilstandserklæringer,
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))
her kontrollerer vi først, om brugeren har gættet nummeret eller ej. hvis de gjorde det, udskriver vi en besked til dem sammen med antallet af forsøg.
hvis spilleren ikke kunne gætte nummeret i slutningen, udskriver vi nummeret sammen med en besked.
hvis du har fulgt os, så er det sådan dit program skal se ud:
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))
lad os nu køre vores spil!
for at køre spillet skal du skrive dette i din terminal python game.py
og trykke på Enter.
dette var det, hvis du sad fast et eller andet sted, tag kodeformen Github repo