Innholdsfortegnelse:

KODE et SPILL MED PYTHON (FOR DUMMIES!): 14 trinn
KODE et SPILL MED PYTHON (FOR DUMMIES!): 14 trinn

Video: KODE et SPILL MED PYTHON (FOR DUMMIES!): 14 trinn

Video: KODE et SPILL MED PYTHON (FOR DUMMIES!): 14 trinn
Video: Полный курс TypeScript за час | Тайпскрипт для начинающих 2024, Juli
Anonim
KODE et SPILL MED PYTHON (FOR DUMMIES!)
KODE et SPILL MED PYTHON (FOR DUMMIES!)

Velkommen til Python, det tredje mest populære programmeringsspråket over hele verden! … og uten tvil det enkleste! Visste du at Youtube og Google begge har Python som hovedspråk for de gjennomførte appene og nettstedene du ser? Vel … Nå vet du; og du bør også finne ut hvorfor Python er ekstremt viktig for fremtiden til The 4.0 Modern Technology Era også!

Du er kanskje også klar over at spillkodingsindustrien trives mer enn noensinne, ettersom flere og flere mennesker får eie smarttelefoner i dag. Og Python er et ganske ideelt kodingsspråk som kan brukes til enkle … men hvis det er godt programmert, vanedannende spill! Nå kan det høres ut som en jævlig skremmende oppgave når ordet "spillkoding" treffer deg … Men ikke bekymre deg! Gjennom denne instruksen vil du bli satt på denne reisen med meg om hvordan du fullt ut kan kode et enkelt spill, fra A til Å, for alle, raskt og kort, uten å betale!

Hvis du ikke har hatt Python ennå, kan du klikke HER for å laste ned dette fantastiske språket (og dyr også! Antar jeg …). Det er helt gratis. Når du er ferdig, tid for litt moro!

Trinn 1: Forstå hvilket spill du skal gjøre

Forstå hvilket spill du skal gjøre!
Forstå hvilket spill du skal gjøre!

Det er avgjørende at du sitter foran et Python -program og vet nøyaktig hva du skal kode.

Husk at denne instruksen er for ALLE! Og du ville ikke ønske å velge en gjennomtenkt idé som Asphalt 8 eller FIFA Mobile; Selvfølgelig er den Python i stand til alle, men det vil ta deg litt tid å bekjenne deg i Python (sannsynligvis 2 år! Kunne ikke passe denne instruksive *urgh *). I stedet vil du kjempe med tradisjonelle ideer som Tic-Tac-Toe (som jeg valgte å være et eksempel for deg!), Hangman, etc. Ting som ikke krever grafikk (grafikk tar deg til en annen … ohhhh … ahh en annen verden, du kan prøve det! Men ikke her fordi det igjen tar tid). Tenk på hva som inspirerer deg, et spill som du kanskje har noen spesielle vedlegg til, eller et spill du vet nøyaktig hvordan det fungerer.

Trinn 2: Analyser spillet ditt

Analyser spillet ditt!
Analyser spillet ditt!

Etter å ha bestemt deg for hva du vil bruke deg for muligens neste uke med koding, er det på tide å skrive ned hva spillet krever, slik at du får en bedre oversikt over hvordan spillet er satt opp!

For eksempel trenger min 3x3 Tic-Tac-Toe 9 blanke mellomrom der brukerne kan skrive ut enten "X" eller "O". Deretter trenger vi ytterligere 9 tomrom for å korrespondere med og lagre brukernes trekk. Jeg måtte gjøre noe for å bytte frem og tilbake mellom "X" og "O" hver gang en spiller avslutter sin periode. Jeg må også sløyfe prosessen med å bytte og lagre trekk til det er en vinner senere, ved å vurdere 3 nøyaktig samme påfølgende symboler i horisontal, vertikal eller diagonal retning.

I utgangspunktet er det det! Du trenger ikke å gjøre mer enn det … ennå, forutsatt at du ikke har noen tidligere erfaring til svært lite kunnskap om Python! Nå … det neste trinnet vil kreve at du spør deg selv mye om hvordan du konverterer det du analyserte … til kode!

Trinn 3: Form analysen din til "datastyrt" grammatikk

Form analysen din til
Form analysen din til

Nå bør du forstå hvor spillet går, i hodet ditt, på språket ditt, med din logikk! Vel … datamaskinen vil ikke forstå det; og siden vi har så mye mer intelligens, burde vi gjøre det første trekket for å snakke på sitt språk.

Tilbake til min Tic-Tac-Toe som et eksempel, med henvisning til trinn 2, at det jeg trenger først er noen 9 tomme mellomrom for å lagre brukernes trekk. En måte kan være å fortelle Python å lage en liste som inneholder de ni mellomrommene! Og mens brukerne skriver inn trekkene sine, erstatter du selve mellomrommet med enten "X" eller "O" i sin tur. Jeg kan bruke noen slags sløyfefunksjoner i Python for å gjenta prosessen mange ganger til det er uavgjort eller … en vinner! Måten jeg bestemmer vinneren på er å bruke en betingelse om at spillet vil fortsette i løkken hvis ingenting skjer, eller hvis alle de 9 plassene er okkupert eller det er en vinner, løkken snaps og spillet slutter!

Dette trinnet er, uten å måtte argumentere, det vanskeligste trinnet i hele Instructable! Du må nå bruke menneskelig logikk for å se hvordan du kan konvertere det du skrev til Python. Du trenger ikke å bekymre deg for om Python er i stand til å håndtere all fantasien din, den har nok kodemateriale til at du kan tilfredsstille den! Hvis du ikke finner veien (som vanligvis ville være tilfelle), er en søkemotor jeg anbefaler på det høyeste Stack Overflow, det er et lite samfunn der folk vanligvis lurer på de mest absurde spørsmålene jeg noen gang har sett, og også hvor det er er noen av de mest strålende svarene noen kan tjene på det!

KLIKK MED MEG HER! De neste 7 trinnene, jeg vil vise deg 7 metoder for Python som jeg anså dem alle nødvendige for hvert til det enkleste spillbare spillet! La krasjkurset begynne!

Trinn 4: Skrive ut setninger, tall eller objekter - Skriv ut ()

Skrive ut setninger, tall eller objekter - Skriv ut ()
Skrive ut setninger, tall eller objekter - Skriv ut ()

Dette er sannsynligvis det mest grunnleggende i Python noensinne! Hvis du ikke kan skrive ut noe, så uansett hvor fantastisk programmet ditt er, er det ubrukelig for verden. Slik fungerer det: print ([skriv inn noe her]). For eksempel vil utskrift ('Du er smart') få Python til å skrive ut "Du er smart" (ADVARSEL: Det spiller ingen rolle om du bruker enkle anførselstegn eller doble anførselstegn, du må bruke ett av dem, og du må starte og avslutte streng med samme sitatart!). Fortsett å leke med print () -funksjonen, få Python til å skrive ut det som får deg til å føle deg bra (det er det jeg ville gjort!). Inntil du føler at du kan gå videre til neste trinn, kan du gjøre ytterligere undersøkelser om print () for dypere forståelse hvis det er ønskelig gjennom Google eller Stack Overflow.

print ("Yayyyy jeg er her!")

print ('I am so good omg')

P/S: Du kan sette dobbelt sitat inne i enkelt sitatbarriere og omvendt, men ikke legg det samme inni hverandre eller … du skjønner hva jeg mener!

Mitt Tic-Tac-Toe-prosjekt … krever selvfølgelig mye trykk, fra å skrive ut brettet og brukergrensesnittet til å bekrefte spillets status.

Trinn 5: Lag en liste for å inneholde forskjellige objekter -

Lag en liste for å inneholde forskjellige objekter -
Lag en liste for å inneholde forskjellige objekter -

En liste inneholder alle variablene du ønsker å sette den inn, det er virkelig en gave Python lager! Alt du trenger for å etablere en er å gi den et navn, sette firkantede parenteser, adskille variabler med kommaer, eller du kan også la den stå tom (slik at du kan legge dem til senere) og du er klar til å gå! ADVARSEL: Du vil ikke kalle det etter noen metoder, ellers vil det oppstå syntaksfeil. Hvis navnet vises i andre farger enn svart, bør du slå på klokka med en gang!

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

eller…

dalist =

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

Husker du 9-plassen som jeg fortalte deg om? Det er her det skal brukes! Den vil lagre alle "-" først; og når spilleren skråstrekker i farten, vil symbolet deres erstatte "-". Alle elementene i en liste starter fra 0, så 0 refererer til det første elementet, 1 refererer til det andre elementet, og så videre. Et ideelt eksempel ville være: vær så snill å jobbe hardt med å forestille deg denne her, at de 3 punktene 0, 1, 2 er den første raden på 3x3 -brettet. Hvis dalist [0] og dalist [1] og dalist [3] alle refererer til det samme symbolet, så har vi en vinner! Se, listen kan være ekstremt nyttig og enklere enn du tror! Mer kunnskap om Python -listen finner du gjennom Google eller Stack Overflow.

Trinn 6: Opprett betingelse (r) for kommandoer - If, Elif & Else

Etabler vilkår (er) for kommandoer - If, Elif & Else
Etabler vilkår (er) for kommandoer - If, Elif & Else

Livet skjer ikke alltid slik du vil ha det, og noen ganger vil du bare gjøre dette hvis scenariet oppfyller kravet ditt. Samme med Python! Du vil ikke at den skal gå gjennom alt og alle situasjoner, for det er en skikkelig smerte! Det er derfor if -tilstanden er så nyttig. Det fungerer akkurat som hvordan det blir tolket, kommandoen (e) inne i at hvis blokken bare vil bli utført HVIS bare når den oppfyller det du ber om. For eksempel vil du bare skrive ut setningen "Yessss" HVIS din lykkemodus er sann (forutsatt at identifikatoren allerede er deklarert på forhånd):

glad = sant

hvis glad == sant:

print ("Yessss")

Hvis det er et IF, vil det vanligvis være et ELSE for resten av scenariene som ikke samsvarer med betingelsen som tidligere ble lagt ut. Si at når du er trist, vil du i stedet skrive ut "Noooo" (fortsettelse av if -setningen ovenfor):

ellers:

print ("Noooo") #Men det vil ikke skrive ut dette uansett, ikke bekymre deg!

Det er en spesiell type hvis i Python som vi kaller det ELIF. Fra selve navnet kan du sannsynligvis finne ut at det er kombinasjonen av if og annet. Så hvis du har to eller flere forhold, er elif fyren du vil ringe (antatt poengsum er tildelt noen tilfeldige tall før det):

poengsum = 65

hvis poengsum> = 90:

print ("Bra jobba!")

elif 80 <= score <90:

print ("God innsats!")

elif 70 <= score <80:

print ("Kunne vært bedre!")

ellers:

print ("Vel …")

ADVARSEL: Innrykk er viktig her! Det vil bestemme kommandoene som tilhører if, elif eller else -setningen. Så vær forsiktig når du designer koden din! Du kan også hekke hvis uttalelser sammen skal være en betingelse bare vil bli vurdert KUN når den ytterste hvis er sann først. Og igjen … Innrykk!

I mitt Tic-Tac-Toe-prosjekt brukte jeg bokstavelig talt tonn av disse. 3x3 -spillet kan høres enkelt nok ut, men du må vurdere haugevis av scenarier som kan finne sted. I dette tilfellet må jeg vurdere om det er en vinner eller ikke ved å kontrollere de tre påfølgende merkene i alle retninger. Ja … ikke bli forvirret fordi det ikke er så komplisert heller, det er bare en serie med overflødige koder, og alt du trenger å gjøre er å endre kontrollområdet og gjøre det! Mer om avdelingskunnskap om dette emnet, klikk på Stack Overflow.

Trinn 7: Flere betingelser totalt sett - og & Eller

Flere forhold totalt - og & Or
Flere forhold totalt - og & Or

Hvem sa at en betingelse alltid kan være bare betingelse? En enkelt tilstand kan også ha flere kriterier. Selv om den er nestet hvis uttalelse kan være en kortsiktig løsning, gjør den koden vesentlig lengre. Så det er AND & OR -metodene. Alle brukes til å kombinere forholdene til en stor traktat. Den eneste forskjellen mellom dem er at og krever at alle betingelser i den ene if -setningen er riktige før du går videre; mens eller bare trenger en av dem for å være riktig. Begge kan være veldig nyttige hvis de brukes riktig, vær klok eller disse to kan faktisk rote med hjernelogikken din!

n = 5

a = 7

hvis n == 5 og a == 6:

print ("Nei, det skal ikke skrives ut")

hvis n == 3 eller a == 7:

print ("Yupp bør skrive ut dette")

Jeg brukte og og eller for alvor å forkorte min Tic-Tac-Toe, ettersom det noen ganger er opptil 3 forhold samtidig, når jeg må vurdere alle tre posisjonene i merket for å avgjøre om det er en vinner eller ikke. Og & eller ville komme veldig godt med! For mer informasjon, besøk Stack Overflow.

Trinn 8: En løkke som gjentar kommandoer til kriteriene er oppfylt - mens

En sløyfe som gjentar kommandoer til kriteriene er oppfylt - mens
En sløyfe som gjentar kommandoer til kriteriene er oppfylt - mens

Vi har beskrevet hvordan du skriver ut, behandler ting bare når betingelsen er sann. Så hva med … å gjenta blokken mange ganger, helt til betingelsen er oppfylt? Ja, det er derfor Python gir deg en WILE!

n = 1

mens n = 1:

print ("hooooo") #Ja, dette vil skrive ut "hooooo" for alltid … og alltid … faktisk … for alltid … og alltid …

Dette kan være et problem, fordi du ikke vil at kommandoene skal sløyfes på ubestemt tid. Så vanligvis når du bruker mens, er det en teknikk som du endrer verdien av tilstanden hver gang den sløyfes, slik at tilstanden oppdateres, og til en gang når den trenger kriteriene, vil den til slutt stoppe. For eksempel kan du legge til verdien til seg selv en enhet om gangen, og deretter sette mens til å fungere til en slags verdier som tallet til slutt 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 vil fortsette å legge seg til 1 på slutten av hver kodeblokk. Mens loop vil sløyfe så lenge n fortsatt er mindre enn 5. Nå til ett øyeblikk (spesielt 4 ganger looping), vil n nå verdien 5 og sløyfen stopper!

glad = sant

mens du er glad:

print ("Yayyy jeg gjorde det!") # Ikke gjør dette egentlig, men du fortjente å vite at du alltid kommer dit!

Selv om det kan være spesielt nyttig i spill som Tic-Tac-Toe, kan det være feilkontroll. Noen ganger må du ha råd til ondsinnede brukere, og hvis de fortsetter å rote, vil while -løkken holde dem i sjakk til de faktisk oppfører seg og legger inn noen faktiske gyldige innspill! Mer informasjon på Stack Overflow

Trinn 9: While Loop Version 2.0 - For

While Loop versjon 2.0 - For
While Loop versjon 2.0 - For

Det er absolutt noen situasjoner som FOR vil bli detronisert med en gang, men for gjør noe annet for deg som ikke kan … Det holder verdien det vil sløyfe i, krever at brukeren angir omfanget av looping (Ja, for loop aldri loop for alltid og noensinne … faktisk …), og ta med loop -verdien hver gang den transformeres også! Nå er jeg kanskje for ordrik, men ta dette eksemplet i bakhodet, si at tm er verdien du vil fortsette med for -løkken:

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

print ("Jeg har allerede hatt" + tm + "øl urghhh") # Dette skrives ut "jeg har allerede drukket 1….5 øl urghhh"

Se, det sparer deg for en kodelinje, men vil gjøre livet mye enklere for spillkoding (Tro meg, jeg lærte dette på den harde måten, og du vil ikke vite om det)! Vanligvis bør du gå for FOR loop hvis du har definert sterkt i tankene dine hvor mange ganger du vil at en kodeblokk skal gjenta. ADVARSEL: Variabelen som ble båret sammen med for -løkken, vil bare eksistere i selve for -løkken, hvis du refererer til den hvor som helst utenfor for -løkken, vil Python begynne å bite deg og spør "Hva i all verden er det du sikter til ???"

Tic-Tac-Toe bruker mye for loop. Du har ikke råd til å sjekke alt hver gang en variabel endres (en ekte smerte). Men det jeg gjorde var å oppdage regelen for Tic-Tac-Toe anatomi, endre verdien i for-sløyfen, for å sjekke alle tre kolonnene med symboler, med at jeg bare måtte lære Python å kontrollere en! Husk å sjekke Stack Overflow for flere spørsmål.

Trinn 10: Be om brukerens innganger - Inndata ()

Be om brukerens innganger - Inndata ()
Be om brukerens innganger - Inndata ()

Sist, men ikke minst, du er spillskaperen og noen kommer til å spille spillet ditt! Og du kan aldri gjette hva de holder på med. Så det du kan gjøre er å gjøre det de fortalte programmet ditt å gjøre, la dem INNLEGGE ting direkte! Sammen kan INPUT og PRINT trolig være de mest grunnleggende metodene alle i Python, du trenger det for å overleve (De er i hver spillkode, jeg kan 100,00% garanti)! Dette er enkelt nok, bare tilordne en variabel og la den være hva brukeren vil at den skal være:

alo = input ("Skriv inn ditt lykketall!")

ADVARSEL: Det er mange typer innganger, mer om Stack Overflow. De vil alltid fungere hvis du lar det være bare input () slik. Men noen ganger vil du kanskje at den skal være spesifikk som et heltallsinngang eller flyteinngang (standard er streng).

lucky_day = int (input ("Yessss your lucky day! Skriv inn et tall her:") #Ikke skriv bokstaver nå, du vil ikke #å rote med Python!

Tic-Tac-Toe trenger en haug med dette! Jeg er sikker på at du kan klare det selv, fra hvordan jeg vet hvor brukerne skal og hva de sikter mot (Du har det riktig, jeg vet ikke … men jeg brukte input ()!).

Trinn 11: Gjør ytterligere undersøkelser for alle metodene du trenger

Gjør ytterligere undersøkelser for alle metodene du trenger!
Gjør ytterligere undersøkelser for alle metodene du trenger!

Jepp, du trenger ikke å vite alt om Python for å lage et spill, du trenger faktisk bare å vite nok, fra og med Ultimate 7 (trinn 4-10, jeg er sikker på at du på en eller annen måte må berøre dem alle for en spillet), og hvis du ikke tror at alle disse 7 kan tilfredsstille det du gjør. Python har mye overraskelse, og noen ganger er det noen terminologimetoder som er for den helt spesifikke bruken, du vet aldri. Så sørg for å søke dem opp ved hjelp av Google eller Stack Overflow!

Min Tic-Tac-Toe brukte alle de "Big Seven" og litt mer, men ikke mye. Jeg er sikker på at hvem som helst kan gjøre det!

Sørg for å skrive dem alle ned på papiret, og lek med alt du trenger for å spille, forstå problemet før du henger deg fast på det. Føler du deg forberedt nok? La oss gå videre til … det siste trinnet !!! STICK MED MEG HER, du er nesten der!

Trinn 12: Bygg en skjelettramme for koden din som fungerer

Bygg en skjelettramme for koden din som fungerer!
Bygg en skjelettramme for koden din som fungerer!

Jeg vil ikke motvirke deg i det hele tatt, men hvis du vil lage et spill som fungerer for alle, må det først fungere legitimt, først med deg! Samle alt materialet du trenger, sett opp rammeverket. Jeg vet at det er lettere sagt enn gjort, men med alt papirarbeidet klart (Hvis du gjorde som jeg ba deg om), bør du være god til å gå.

Ikke bry deg om syntaksfeil i det første. Det er viktig at du fullfører koden din uten avbrudd, bare når du når en blindvei som du bør stoppe. Vi mennesker, er følsomme for tankestrømmer, jeg har møtt en situasjon da alt flyter så jevnt og flytende enn jeg gikk på do… Det neste jeg visste, mistet jeg tanken. Så ja, ikke gjenta etter meg! Legg ned alt i hodet ditt mens det fortsatt er der og friskt først.

Tic-Tac-Toe-prosessen inkluderer å be om brukerinngang, ved å bruke input (), bruk mens du bare renser de gyldige inngangene. Deretter legges et sett med hvis elif annet, for og stund ut for å sjekke hver gang om det er en vinner. Ingen vinner, og mens sløyfen får spillet til å fortsette til det er en eller alle 9 mellomrom opptatt, noe som resulterer i uavgjort.

Etter at du har kontrollert at dette ER spillet, begynner du å kjøre programmet og se etter syntaks eller semantiske feil senere. Og igjen, bygg et spill for deg selv først, IKKE gå all ballistisk kreativ før den opprinnelige rammen var der ennå. Få det gjort, og gå videre! Spillet ditt er der, hva venter du på ???

Trinn 13: Få deg ut der ute, test og gjør deg selv til et SPILL

Få deg ut, test og gjør deg selv til et SPILL!
Få deg ut, test og gjør deg selv til et SPILL!

Det er det! Alt du trenger å gjøre nå er å ikke kaste bort alle dine forhåndsinnsatser, sett deg selv der ute! Jeg tror at hvis du følger alle disse trinnene, vil du absolutt være tilstrekkelig til å lage et spill. Hvis du ikke gjør det, ikke gi opp, prøv; Denne instruksen er å hjelpe alle, men bare du kan bestemme skjebnen til SPILLET ditt! Husk, ikke gi opp, bygg skjelettrammene først. Hvis det er merkelige syntaksfeil du ikke kan se, søk etter hjelp gjennom Stack Overflow, denne tingen har holdt meg gjennom tykt og tynt!

Uansett, til slutt, lykke til på Python -reisen, programmer et spill, gjør meg stolt, for VI ER PROGRAMMERZZZZZZZ !!!!!

P/S: Trinn 14 for kreativ oppmuntring!

Trinn 14: * EKSTRA! * Etter at versjon 1.0 fungerer, målrettet for kreativitet

* EKSTRA!* Etter at versjon 1.0 fungerer, målrettet mot kreativitet!
* EKSTRA!* Etter at versjon 1.0 fungerer, målrettet mot kreativitet!

Hvis du fortsatt leser dette, flott! Du trenger ikke, men jeg vil bare gi deg beskjed etter at alt fungerer problemfritt for deg, BARE enn du kan redigere, slik at andre også kan bruke programmet ditt. dekorere den på nytt for spillervennlighet; eller oppgrader spillet ditt (jeg oppgraderte min Tic-Tac-Toe ved å programmere en AI! Nå tok dette meg en uke (eller 7/8 av tiden min for det) å fullføre!). Sørg for å bruke og utnytte Stack Overflow hvis det skulle oppstå spørsmål. Jeg ønsket deg lykke til, fullfør spillet ditt, del det i kommentaren nedenfor og utbred kodingbevegelsen !!!

VI ER PROGRAMMERZZZZ !!!!!

Anbefalt: