Indholdsfortegnelse:

KODE et SPIL MED PYTHON (FOR DUMMIES!): 14 trin
KODE et SPIL MED PYTHON (FOR DUMMIES!): 14 trin

Video: KODE et SPIL MED PYTHON (FOR DUMMIES!): 14 trin

Video: KODE et SPIL MED PYTHON (FOR DUMMIES!): 14 trin
Video: Python Tutorials for Beginners - Learn Python Online 2024, Juli
Anonim
KODE et SPIL MED PYTHON (FOR DUMMIES!)
KODE et SPIL MED PYTHON (FOR DUMMIES!)

Velkommen til Python, det tredjemest populære programmeringssprog på verdensplan! … og uden tvivl det enkleste! Vidste du, at Youtube og Google begge har Python som hovedsprog for deres gennemførte apps og websteder, du ser? Tja … Nu ved du det; og du bør også finde ud af, hvorfor Python også er ekstremt vigtig for fremtiden for The 4.0 Modern Technology Era!

Du er måske også opmærksom på, at spilkodningsindustrien trives mere end nogensinde, da flere og flere mennesker kommer til at eje smartphones i dag. Og Python er et temmelig ideelt kodningssprog, der kan bruges til enkle … men hvis det er velprogrammerede, vanedannende spil! Nu kan det lyde som en forbandet skræmmende opgave, når ordet "spilkodning" rammer dig… Men bare rolig! Gennem denne Instructable vil du blive sat på denne rejse med mig om, hvordan du fuldt ud kan kode et simpelt spil, fra A til Z, for alle, hurtigt og kort, uden at betale!

Hvis du ikke har haft Python endnu, skal du klikke HER for at downloade dette fantastiske sprog (og dyr også! Jeg gætter …). Det er helt gratis. Når du er færdig, tid til lidt sjov!

Trin 1: Forstå, hvilket spil du skal lave

Forstå, hvilket spil du skal lave!
Forstå, hvilket spil du skal lave!

Det er afgørende, at du sidder foran et Python -program og ved præcis, hvad du skal kode.

Husk at denne instruktør er for ALLE! Og du ville ikke have lyst til at vælge en døende idé, f.eks. Asphalt 8 eller FIFA Mobile; Selvfølgelig er denne Python i stand til alle, men det vil tage dig noget tid at bekende sig i Python (sandsynligvis 2 år! Kunne ikke passe til denne instruktive *urgh *). I stedet vil du gerne kæmpe med traditionelle ideer som Tic-Tac-Toe (som jeg valgte at være et eksempel for dig!), Hangman osv. Ting, der ikke kræver grafik (grafik tager dig til en anden … ohhhh … ahh en anden verden, du kan prøve det! Men ikke her, fordi det igen tager tid). Tænk over, hvad der inspirerer dig, et spil, som du måske har nogle særlige vedhæftede filer til, eller et spil, som du ved præcis, hvordan det fungerer.

Trin 2: Analysér dit spil

Analysér dit spil!
Analysér dit spil!

Efter at have besluttet, hvad du vil bruge dig til muligvis i den næste uge med kodning, er det tid til at skrive ned, hvad spillet kræver, så du har et bedre overblik over, hvordan spillet er sat op!

For eksempel ville min 3x3 Tic-Tac-Toe have brug for 9 tomme mellemrum, hvor brugerne kan udskrive i enten "X" eller "O". Derefter skulle vi bruge yderligere 9 emner til at svare til og gemme brugernes træk. Jeg skulle gøre noget for at skifte frem og tilbage mellem "X" og "O", hver gang en spiller afslutter sin periode. Jeg skulle også sløjfe processen med at skifte og gemme træk, indtil der senere er en vinder ved at overveje 3 nøjagtig samme på hinanden følgende symboler i vandret, lodret eller diagonal retning.

Grundlæggende er det det! Du behøver ikke at gøre mere end det … endnu, forudsat at du ikke har nogen tidligere erfaring til meget lidt viden om Python! Nu … det næste trin vil kræve, at du sætter spørgsmålstegn ved dig selv meget om, hvordan du konverterer det, du analyserede … til kode!

Trin 3: Form din analyse til "computer" grammatik

Form din analyse til
Form din analyse til

Nu skulle du forstå, hvor spillet går hen, i dit hoved, på dit sprog, med din logik! Nå … computeren forstår det ikke; og da vi har så meget mere intelligens, burde vi gøre det første skridt til at tale på sit sprog.

Tilbage til min Tic-Tac-Toe som et eksempel med henvisning til trin 2, at det jeg først har brug for er nogle 9 tomme mellemrum til at gemme brugernes træk. En måde kunne være at fortælle Python at lave en liste, der indeholder de 9 mellemrum! Og mens brugerne skriver deres træk, udskifter du netop det mellemrum med enten "X" eller "O" til gengæld. Jeg kan bruge nogle slags loop -funktioner i Python til at hjælpe med at gentage processen mange gange, indtil der er uafgjort eller … en vinder! Den måde, hvorpå jeg bestemmer vinderen, er at bruge en betingelse om, at spillet fortsætter i sin loop, hvis der ikke sker noget, eller hvis alle 9 pladser er optaget, eller hvis der er en vinder, løkken snaps og spillet slutter!

Dette trin er, uden at skulle argumentere, det sværeste trin i hele denne Instructable! Du skal nu bruge menneskelig logik til at se, hvordan du kan konvertere det, du skrev, til Python. Du behøver ikke bekymre dig om, hvorvidt Python er i stand til at håndtere al din fantasi, det har nok kodningsmaterialer, så du kan tilfredsstille det! Hvis du ikke kan finde vejen (hvilket normalt ville være tilfældet), er en søgemaskine, jeg super anbefaler, Stack Overflow, det er et lille samfund, hvor folk normalt undrer sig over de mest absurde spørgsmål, jeg nogensinde har set, og også hvor der er er nogle af de mest geniale svar, som alle kan få ud af det!

STIK MED MIG HER! De næste 7 trin, vil jeg vise dig 7 metoder til Python, som jeg anså dem alle nødvendige for hver til det enkleste spilbare spil! Lad styrtkurset begynde!

Trin 4: Udskrivning af udsagn, tal eller objekter - Udskriv ()

Udskrivning af udsagn, tal eller objekter - Udskriv ()
Udskrivning af udsagn, tal eller objekter - Udskriv ()

Dette er nok det mest fundamentale i Python nogensinde! Hvis du ikke kan udskrive noget, er det uanset hvor fantastisk dit program er, det er ubrugeligt for verden. Sådan fungerer det: print ([skriv noget her]). For eksempel vil print ('Du er smart') få Python til at udskrive "Du er smart" (ADVARSEL: Det er ligegyldigt, om du bruger enkelte citater eller dobbelte citater, du skal bruge et af dem, og du skal starte og afslutte streng med samme citatart!). Fortsæt med at spille med funktionen print (), få Python til at udskrive alt det, der får dig til at føle dig godt (det er, hvad jeg ville gøre!). Indtil du føler, at du kan gå videre til det næste trin, kan du foretage yderligere research om print () for at få en dybere forståelse, hvis det ønskes gennem Google eller Stack Overflow.

print ("Yayyyy jeg er her!")

print ('Jeg er så god omg')

P/S: Du kan sætte dobbelt citat inde i enkelt citater barriere og omvendt, men læg ikke det samme i hinanden eller … du vil se, hvad jeg mener!

Mit Tic-Tac-Toe-projekt … kræver naturligvis meget print, fra print af tavlen og brugergrænseflade til bekræftelse af spillets status.

Trin 5: Opret en liste til at indeholde forskellige objekter -

Opret en liste til at indeholde forskellige objekter -
Opret en liste til at indeholde forskellige objekter -

En liste indeholder alle de variabler, du ønsker at sætte den i, det er virkelig en gave, som Python laver! Nu er alt hvad du behøver for at etablere en, at give det et navn, sætte firkantede parenteser, adskille variabler med kommaer, eller du kan også lade det stå tomt (så du kan tilføje dem senere), og du er klar til at gå! ADVARSEL: Du vil ikke navngive det efter nogle metoder, eller der vil være en syntaksfejl. Hvis navnet vises i andre farver end sort, skal din klokke tændes med det samme!

dalist = [5, 7, "jeg er smuk", 12 + 1, 3.141592657]

eller…

dalist =

dalist.append (5) #now dalist har [5] som element!

Kan du huske 9-pladsen, som jeg fortalte dig om? Det er her det skal bruges! Det vil først gemme alle "-"; og når spilleren skråstreg i farten, erstatter deres symbol "-". Alle elementerne i en liste starter fra 0, så 0 refererer til det første element, 1 refererer til det andet element osv. Et ideelt eksempel ville være: vær venlig at arbejde hårdt på at forestille dig denne her, at de 3 pletter 0, 1, 2 er den første række i 3x3 -tavlen. Hvis dalist [0] og dalist [1] og dalist [3] alle refererer til det samme symbol, så har vi en vinder! Se, listen kan være yderst nyttig og mere enkel, end du tror! Mere viden om Python -listen kan findes via Google eller Stack Overflow.

Trin 6: Opret betingelser for kommandoer - If, Elif & Else

Etabler betingelser for kommandoer - If, Elif & Else
Etabler betingelser for kommandoer - If, Elif & Else

Livet sker ikke altid, som du vil have det, og nogle gange gør du kun dette, hvis scenariet opfylder dine krav. Det samme med Python! Du ville ikke have, at det skulle gå igennem alt og alle situationer, for det er en rigtig smerte! Det er derfor, if -betingelsen er så nyttig. Det fungerer nøjagtigt som det fortolkes, kommandoen / kommanderne inde i, at hvis blok kun vil blive udført HVIS først, når den opfylder det, du beder om. For eksempel vil du kun udskrive udsagnet "Yessss" HVIS din lykkelige tilstand er sand (forudsat at identifikatoren allerede er erklæret på forhånd):

glad = sandt

hvis glad == sandt:

print ("Yessss")

Hvis der er et IF, vil der normalt være et ELSE for resten af scenarierne, der ikke matcher betingelsen, der tidligere blev udlagt. Sig, når du er ked af det, vil du i stedet udskrive "Noooo" (fortsættelse af if -sætningen ovenfor):

andet:

print ("Noooo") #Men det vil ikke printe dette alligevel, bare rolig!

Der er en særlig type hvis i Python, som vi kalder det ELIF. Ud fra selve navnet kunne du nok finde ud af, at det er kombinationen af hvis og andet. Så hvis du har to eller flere betingelser, er elif den fyr, du vil ringe til (antaget score er tildelt nogle tilfældige tal før det):

score = 65

hvis score> = 90:

print ("Godt job!")

elif 80 <= score <90:

print ("God indsats!")

elif 70 <= score <80:

print ("Kunne have været bedre!")

andet:

print ("Nå …")

ADVARSEL: Indrykning er vigtig her! Det vil bestemme, hvilke kommandoer der tilhører if, elif eller ellers sætning. Så vær forsigtig med at designe din kode! Du kan også indlejre, hvis erklæringer tilsammen en betingelse kun ville blive overvejet KUN, når den yderste hvis først er sand. Og igen … Indrykning!

I mit Tic-Tac-Toe-projekt brugte jeg bogstaveligt talt tons af disse. 3x3 -spillet lyder måske simpelt nok, men du bliver nødt til at overveje masser af scenarier, der kan finde sted. I dette tilfælde skal jeg overveje, om der er en vinder eller ej ved at kontrollere de 3 på hinanden følgende mærker i alle retninger. Ja … bliv ikke forvirret, for det er heller ikke så kompliceret, det er bare en række redundante koder, og alt hvad du skal gøre er at ændre kontrolområdet og gøre det! Du kan få mere viden om dette emne ved at klikke på Stack Overflow.

Trin 7: Flere betingelser i det hele taget - og & Eller

Flere betingelser i alt - og & Eller
Flere betingelser i alt - og & Eller

Hvem sagde, at en betingelse altid kun kan være betingelse? En enkelt betingelse kan også have flere kriterier. Selvom den er indlejret, hvis udsagn kan være en kortsigtet løsning, gør den koden væsentligt længere. Så der er AND & OR -metoderne. Der bruges alle til at kombinere forholdene til en stor traktat. Den eneste forskel mellem dem er, at og kræver, at alle betingelser i den ene if -sætning er korrekte, inden vi går videre; mens eller kun har brug for en af dem for at være korrekt. Begge kan være meget nyttige, hvis de bruges rigtigt, vær kloge, eller disse to kan faktisk rode med din hjernelogik!

n = 5

a = 7

hvis n == 5 og a == 6:

print ("Nej, det skal ikke udskrives")

hvis n == 3 eller a == 7:

print ("Yupp skal udskrive dette")

Jeg brugte seriøst og & eller til at forkorte min Tic-Tac-Toe dramatisk, da der nogle gange er op til 3 betingelser på én gang, når jeg skal overveje alle 3 positioner i mærket for at afgøre, om der er en vinder eller ej. Og & eller ville være super praktisk! For flere detaljer, besøg Stack Overflow.

Trin 8: En sløjfe, der gentager kommandoer, indtil kriterierne er opfyldt - mens

En sløjfe, der gentager kommandoer, indtil kriterierne er opfyldt - mens
En sløjfe, der gentager kommandoer, indtil kriterierne er opfyldt - mens

Vi har gennemgået hvordan man udskriver, behandler ting kun når betingelsen er sand. Så hvad med … at gentage den blok mange gange, hele vejen, indtil betingelsen er opfyldt? Ja, derfor giver Python dig en HVILKET!

n = 1

mens n = 1:

print ("hooooo") #Ja, dette vil udskrive "hooooo" for evigt … og nogensinde … faktisk … for evigt … og altid …

Dette kan være et problem, fordi du ikke vil have dine kommandoer til at løkke på ubestemt tid. Så normalt når du bruger mens, er der en teknik, som du ændrer værdien af tilstanden hver gang den sløjfer, så tilstanden opdateres, og indtil engang når den har brug for kriterierne, stopper den til sidst. For eksempel kan du tilføje værdien til sig selv en enhed ad gangen og derefter indstille mens til at fungere, indtil en slags værdier, som tallet i sidste ende vil nå:

n = 1

mens n <5:

print ("jeg har" + n + "øl boiiiii!")

n = n + 1 #eller du kan også skrive n + = 1

Hvordan dette vil fungere er n, bliver ved med at tilføje sig selv til 1 i slutningen af hver kodeblok. Mens loop vil løkke, så længe n stadig er mindre end 5. Nu indtil et øjeblik (specifikt 4 gange looping), når n værdien 5 og loopet stopper!

glad = sandt

mens glad:

print ("Yayyy jeg gjorde det!") # Gør faktisk ikke dette, men du fortjente at vide, at du altid kommer dertil!

Selvom det kan være særligt nyttigt i spil som Tic-Tac-Toe, kan fejlkontrol. Nogle gange skal du have råd til uønskede brugere, og hvis de bliver ved med at rode op, vil while loop holde dem i skak, indtil de rent faktisk opfører sig og indtaster nogle faktiske gyldige input! Flere oplysninger på Stack Overflow

Trin 9: While Loop Version 2.0 - For

While Loop Version 2.0 - For
While Loop Version 2.0 - For

Der er helt sikkert nogle situationer, FOR vil blive detroniseret med et stykke tid, men for gør noget andet for dig, som selvom det ikke kan … Det rummer den værdi, det vil løkke i, kræver, at brugeren angiver looping -området (Ja, for loop aldrig loop for evigt og nogensinde … faktisk …), og bær loop -værdien hver gang den transformeres, også! Nu er jeg måske for ordrig, men tag dette eksempel i tankerne, sig tm er den værdi, du vil fortsætte med for -sløjfen:

for tm i området (1, 5):

print ("Jeg har allerede haft" + tm + "øl urghhh") # Dette vil udskrive "jeg har allerede drukket 1….5 øl urghhh"

Se, det sparer dig for en kodelinje, men vil gøre livet meget lettere for spilkodning (Tro mig, jeg lærte dette på den hårde måde, og du vil ikke vide om det)! Normalt bør du gå efter FOR -loop, hvis du i dit sind har defineret det antal gange, du vil have en kodeblok til at gentage. ADVARSEL: Variablen, der blev transporteret sammen med for -løkken, vil kun eksistere i selve for -løkken, hvis du henviser til den hvor som helst uden for for -løkken, begynder Python at bide dig og spørge "Hvad pokker refererer du til ???"

Tic-Tac-Toe bruger meget til loop. Du har ikke råd til at kontrollere alt, hver gang en variabel ændrer sig (en rigtig smerte). Men hvad jeg gjorde var at opdage reglen for Tic-Tac-Toe anatomi, ændre værdien inden for-loop, for at kontrollere alle 3 kolonner med symboler, idet jeg kun skulle lære Python at kontrollere en! Sørg for at tjekke Stack Overflow for flere spørgsmål.

Trin 10: Spørg om brugernes input - input ()

Spørg efter brugerens input - input ()
Spørg efter brugerens input - input ()

Sidst men ikke mindst er du skaberen af spillet, og nogen kommer til at spille dit spil! Og du kan aldrig gætte, hvad de laver. Så hvad du kan gøre er at gøre, hvad de fortalte dit program at gøre, lad dem direkte INPUT stuffs! Sammen er INPUT og PRINT sandsynligvis de mest grundlæggende metoder alle i Python, du får brug for det for at overleve (De er i hver spil-kode, jeg kan 100,00% garanti)! Dette er simpelt nok, bare tildel en variabel og lad den være, hvad brugeren vil have den til at være:

alo = input ("Indtast dit lykketal!")

ADVARSEL: Der er mange typer input, mere om Stack Overflow. De vil altid fungere, hvis du lader det være bare input () sådan. Men nogle gange vil du måske have, at det skal være specifikt som et heltal input eller float input (standard er streng).

lucky_day = int (input ("Yessss your lucky day! Indtast et nummer her:") #Indtast ikke bogstaver nu, du vil ikke #to rode med Python!

Tic-Tac-Toe har brug for en masse af dette! Jeg er sikker på, at du kan klare det selv, fra hvordan jeg ved, hvor brugerne skal hen, og hvad de sigter mod (Du har det rigtigt, jeg ved det ikke … men jeg brugte input ()!).

Trin 11: Undersøg alle de metoder, du har brug for

Gør yderligere forskning for alle de metoder, du har brug for!
Gør yderligere forskning for alle de metoder, du har brug for!

Yup, du behøver ikke at vide alt om Python for at oprette et spil, du behøver faktisk kun at vide nok, startende med Ultimate 7 (trin 4-10, jeg er sikker på, at du på en eller anden måde bliver nødt til at røre dem alle for et spil), og hvis du ikke tror, at alle disse 7 kan tilfredsstille det, du laver. Python har en masse overraskelse, og nogle gange er der nogle terminologimetoder, der er til den helt specifikke brug, man ved aldrig. Så sørg for at søge efter dem ved hjælp af Google eller Stack Overflow!

Min Tic-Tac-Toe brugte alle de "Big Seven" og lidt mere, men ikke meget. Jeg er sikker på, at alle kan gøre det!

Sørg for at skrive dem alle ned på papiret, og leg med alt det, du skal spille, forstå problemet, før du hænger dig selv på det. Føler du dig forberedt nok? Lad os gå videre til … det sidste trin !!! STICK MED MIG HER, du er næsten der!

Trin 12: Byg en skeletramme til din kode, der virker

Byg en skeletramme til din kode, der virker!
Byg en skeletramme til din kode, der virker!

Jeg vil slet ikke afskrække dig, men hvis du vil oprette et spil, der fungerer for alle, skal det først og fremmest arbejde med lov! Saml alle de materialer, du har brug for, sæt rammerne op. Jeg ved, at det er lettere sagt end gjort, men med alle papirerne klar (Hvis du gjorde, som jeg sagde, at du skulle), skulle du være god til at gå.

Gør ikke syntaksfejl i første omgang. Det er vigtigt, at du afslutter din kode uden afbrydelser, kun når du når en blindgyde, som du skal stoppe. Vi mennesker, er følsomme over for tankestrømme, jeg er stødt på en situation, hvor alt flyder så glat og flydende, end jeg gik på badeværelset … Det næste, jeg vidste, mistede jeg tanken. Så ja, ikke gentag efter mig! Læg alt i dit hoved, mens det stadig er der og frisk først.

Tic-Tac-Toe-processen inkluderer at bede om brugerinput, ved hjælp af input (), mens du kun bruger til at rense de gyldige input. Derefter lægges et sæt hvis elif andet, for og mens ud for hver gang at kontrollere, om der er en vinder. Ingen vinder, og mens løkken får spillet til at fortsætte, indtil der er en eller alle 9 pladser er optaget, hvilket resulterer i uafgjort.

Når du har sørget for, at dette ER spillet, begynder du at køre programmet og kigge efter syntaks eller semantiske fejl senere. Og igen, bygg et spil til dig selv først, lad være med at være ballistisk, før din originale ramme var der endnu. Få det nu gjort, og gå videre! Dit spil er der, hvad venter du på ???

Trin 13: Få dig selv derud, test og gør dig selv til et spil

Få dig selv derud, test og gør dig selv til et spil!
Få dig selv derud, test og gør dig selv til et spil!

Det er det! Alt du skal gøre nu er ikke at spilde alle dine forhåndsindsatser, læg dig selv derude! Jeg tror, at hvis du følger alle disse trin, vil du absolut være tilstrækkelig til at oprette et spil. Hvis du ikke gør det, skal du ikke give op, prøv; Denne instruks er til at hjælpe alle, men kun du kan bestemme skæbnen for dit SPIL! Husk, giv ikke op, byg skelettet først. Hvis der er mærkelige syntaksfejl, som du ikke kan se, skal du søge hjælp gennem Stack Overflow, denne ting har holdt mig igennem tykt og tyndt!

Anyway, til sidst, held og lykke med din Python -rejse, programmer et spil, gør mig stolt, for VI ER PROGRAMMERZZZZZZZ !!!!!

P/S: Trin 14 for kreativ opmuntring!

Trin 14: * EKSTRA! * Efter at din version 1.0 virker, målrettet til kreativitet

* EKSTRA!* Efter at din version 1.0 virker, målrettet til kreativitet!
* EKSTRA!* Efter at din version 1.0 virker, målrettet til kreativitet!

Hvis du stadig læser dette, fantastisk! Du behøver ikke, men jeg vil bare fortælle dig, at alt fungerer problemfrit for dig, KUN end du kan redigere, så andre også kan bruge dit program; dekorere det igen for spillervenlighed; eller opgrader dit spil (jeg opgraderede min Tic-Tac-Toe ved at programmere en AI! Nu tog det mig en uge (eller 7/8 af min tid til det) at fuldføre!). Sørg for at bruge og udnytte Stack Overflow, hvis der opstår spørgsmål. Jeg ønskede dig held og lykke, fuldfør dit spil, del det i kommentaren herunder og udbred kodningsbevægelsen !!!

VI ER PROGRAMMERZZZZ !!!!!

Anbefalede: