Byg dette enkle spil for at styrke dine Python-programmeringskoncepter.
At skabe spil i Python er en fantastisk måde at lære grundlæggende programmeringskoncepter på og bygge et stærkere fundament i programmering. Et af de spil, du kan lave, er et simpelt tal-gættespil.
Du kan oprette talgættespillet ved hjælp af et enkelt Python-script. For at spille spillet skal du køre scriptet ved hjælp af en kommandolinje eller terminal.
For at gøre spillet mere interessant kan du tilføje nogle ekstra gameplay-koncepter. Dette inkluderer evnen til at give hints til spilleren, eller evnen til at ændre spillets sværhedsgrad.
Sådan genereres et tilfældigt tal
Du kan starte med at oprette et nyt Python-script med en .py udvidelse til at holde logikken for spillet. Indeni skal du tilføje noget startkode for at generere et tilfældigt tal mellem 1 og 50, som spilleren kan gætte.
Hvis du ikke er bekendt med Python-syntaks, så tag et kig på nogle grundlæggende Python eksempler for at få dig op i fart.
- Opret en ny fil kaldet number-guessing-game.py. Åbn filen ved hjælp af en hvilken som helst teksteditor, som f.eks Visual Studio eller Atom.
- Øverst i filen skal du importere tilfældig modul:
importere tilfældig
- Brug tilfældig moduler randint() metode til at generere et tilfældigt tal mellem 1 og 50:
gæt_område = 50
svar = random.randint(1, gæt_område) - Start spillet, og bed spilleren om at gætte tallet:
Print("Velkommen til talgættelegen!")
Print("")
brugerinput = input("Gæt et tal mellem 1 og" + str (gæt_område) + ": ")
gæt = int (brugerinput)
Sådan kontrolleres, om brugeren har gættet det rigtige nummer
For at brugeren skal vinde spillet, skal du sammenligne brugerens input med det genererede tilfældige tal og kontrollere, om det matcher.
- Mens brugeren endnu ikke har gættet det rigtige svar, så bed dem igen om at indtaste et nyt input. Sørg for at indrykke enhver indlejret kode, da Pythons struktur afhænger af korrekt indrykning:
gæt = ""
mens gæt!= svar:
brugerinput = input("Gæt et tal mellem 1 og" + str (gæt_område) + ": ")
gæt = int (brugerinput) - Hvis koden kører forbi while-løkken, betyder det, at de har gættet det rigtige svar:
Print("Tillykke! Du gættede det rigtige tal. Du vinder!")
Sådan tilføjer du et begrænset antal gæt
For at begrænse spilleren fra at spørge et uendeligt antal gange, kan du begrænse antallet af deres gæt.
- Deklarer en ny variabel i begyndelsen af filen for at holde styr på spillerens antal tilladte gæt. Indstil den til 10 til at begynde med:
gæt_tilladt = 10
- Skift while-sætningen til en for-løkke, der kun gentages for det begrænsede antal gæt:
til jeg i område (gæt_tilladt):
brugerinput = input("Gæt et tal mellem 1 og" + str (gæt_område) + ": ")
gæt = int (brugerinput) - Inde i for-løkken, hvis et af gættene er det rigtige svar, skal du bryde ud af for-løkken:
hvis gæt == svar:
Print("Tillykke! Du gættede det rigtige tal. Du vinder!")
pause - Stadig, inde i for-løkken, skal du tilføje en anden if-sætning for at kontrollere, om spilleren har nået deres antal gæt-grænser. Hvis ja, afslut spillet:
hvis (i == gæt_tilladt - 1):
Print("Undskyld, du er løbet tør for gæt. Du taber!")
Sådan tilføjer du tip til spillet
Tilføj en anden funktion til spillet for at give spilleren nogle hints. Et tip kan omfatte at lade dem vide, om de skal gætte et højere tal eller et lavere tal.
Et andet tip er at fortælle dem, hvor tæt på eller langt de er fra svaret. For eksempel skal spillet informere dem, hvis de bliver "varmere". Ellers, hvis de er langt fra tallet, skal spillet fortælle dem, at de bliver "koldere".
- Rediger if-sætningen, der fortæller brugeren, om de har vundet. Hvis de stadig ikke har gættet det rigtige svar, så lad dem vide, om det faktiske svar er højere eller lavere.
hvis gæt == svar:
Print("Tillykke! Du gættede det rigtige tal. Du vinder!")
pause
elif gæt < svar:
Print("Antallet er højere.")
andet:
Print("Antallet er lavere.") - Tilføj en anden if-sætning for at tilføje yderligere tip. Dette vil fortælle dem, om de kommer tættere på eller "varmere" til nummeret. Brug den absolutte funktion til at bestemme afstanden mellem gættet og svaret. For eksempel, hvis de er mindre end 10 numre væk fra svaret, vil spillet udskrive "Du er varm":
hvis abs (gæt - svar) <= 10:
Print("Du er varm!")
elif abs (gæt - svar) <= 20:
Print("Du bliver varmere.")
elif abs (gæt - svar) <= 30:
Print("Du er kold.")
andet:
Print("Du fryser.")
Sådan ændrer du spillets sværhedsgrad
Du kan bede brugeren om at vælge en sværhedsgrad. Sværhedsgraden afgør, hvor mange gætteforsøg spilleren har, og hvor langt gætterækken er.
- I begyndelsen af spillet skal du bede brugeren om at vælge en sværhedsgrad:
Print("Velkommen til talgættelegen!")
Print("")
mensRigtigt:
niveau = input("Vælg sværhedsgrad (let, medium, hårdt):").nederste() - Tilføj noget validering for at sikre, at spilleren kun skriver indstillingerne "let", "medium" eller "hårdt". Hvis brugeren indtaster et ugyldigt svar, vil spillet bede dem om at gå ind i en sværhedsgrad igen.
hvis niveau i ["let", "medium", "hårdt"]:
pause
andet:
Print("Ugyldigt input. Vælg venligst enten 'let', 'medium' eller 'svært'.") - Før du genererer det tilfældige tal, skal du bruge spillerens sværhedsgrad til at bestemme, hvor mange gæt de kan have. Du kan også bruge deres valgte sværhedsgrad til at bestemme, hvor stort gætteområdet er:
hvis niveau == "let":
gæt_område = 50
gæt_tilladt = 20
elif niveau == "medium":
gæt_område = 100
gæt_tilladt = 15
andet:
gæt_område = 150
gæt_tilladt = 10svar = random.randint(1, gæt_område)
Sådan spiller du spillet
Nu hvor du har al logikken til spillet, kan du spille det i en kommandoprompt. Du kan også se eksemplet på gættespil med fulde tal på GitHub.
- Åbn en kommandoprompt eller terminal, og naviger til den mappe, hvor du gemte dit Python-script. For eksempel, hvis du har gemt dit script på skrivebordet, vil kommandoen se sådan ud:
cd C:\Users\Sharl\Desktop
- Brug python kommando for at køre dit Python-script:
python number-guessing-game.py
- Indtast en sværhedsgrad.
- Indtast tal i kommandoprompten for at prøve at gætte tallet.
Lær programmering ved at skabe simple spil
Nu forstår du, hvordan du opretter og kører et simpelt spil ved hjælp af et enkelt Python-script. Fortsæt din læringsrejse ved at udforske andre interessante projektideer. Et eksempel på dette er at prøve at bygge en Ping-sweeper i Python.