Cuprins:

CODEAZĂ un JOC CU PITON (PENTRU MANIȚI!): 14 pași
CODEAZĂ un JOC CU PITON (PENTRU MANIȚI!): 14 pași

Video: CODEAZĂ un JOC CU PITON (PENTRU MANIȚI!): 14 pași

Video: CODEAZĂ un JOC CU PITON (PENTRU MANIȚI!): 14 pași
Video: Tutorial Python - Invata in 10 minute 2024, Iulie
Anonim
CODAȚI UN JOC CU PITON (PENTRU MANUCHI!)
CODAȚI UN JOC CU PITON (PENTRU MANUCHI!)

Bine ați venit la Python, al treilea cel mai popular limbaj de programare din întreaga lume! … și probabil cel mai simplu! Știați că Youtube și Google au ambele Python ca limbă principală pentru aplicațiile și site-urile web pe care le vedeți? BINE … Acum știi; și, de asemenea, ar trebui să vă dați seama de ce Python este extrem de important și pentru viitorul erei tehnologiei moderne 4.0!

De asemenea, este posibil să fiți conștienți de faptul că industria codificării jocurilor prosperă mai mult ca oricând, întrucât din ce în ce mai mulți oameni ajung să dețină smartphone-uri în zilele noastre. Iar Python este un limbaj de codare destul de ideal, care poate fi folosit pentru jocuri simple … totuși, dacă sunt bine programate, jocuri captivante! Acum s-ar putea să sune ca o sarcină al naibii de descurajantă atunci când vă lovește cuvântul „codificare joc” … Dar nu vă faceți griji! Prin acest Instructable, veți fi în această călătorie cu mine despre cum să codificați complet un joc simplu, de la A la Z, pentru toată lumea, rapid și scurt, fără a plăti!

Dacă nu ați avut încă Python, faceți clic AICI pentru a descărca acest limbaj uimitor (și și animal! Cred că …). Este total gratuit. Odată ce ai terminat, ai timp să te distrezi!

Pasul 1: Înțelegeți ce joc urmează să faceți

Înțelegeți ce joc veți face!
Înțelegeți ce joc veți face!

Este crucial să vă așezați în fața unui program Python știind exact ce să codificați.

Amintiți-vă că acest Instructable este pentru TOȚI! Și nu ai vrea să alegi o idee dură, cum ar fi Asphalt 8 sau FIFA Mobile; Desigur, Python este capabil de toate, dar îți va lua ceva timp să profesezi în Python (probabil 2 ani! Nu s-ar putea potrivi cu acest instructable * urgh *). În schimb, ați dori să luptați cu idei tradiționale, cum ar fi Tic-Tac-Toe (pe care am ales să fie un exemplu pentru dvs.!), Hangman, etc. Lucruri care nu necesită grafic (graficul vă va duce la altul … ahh altă lume, o poți încerca! Dar nu aici pentru că din nou, este nevoie de timp). Gândiți-vă la ceea ce vă inspiră, la un joc pe care s-ar putea să-l aveți atașamente speciale sau la un joc care știți exact cum funcționează.

Pasul 2: Analizează-ți jocul

Analizează-ți jocul!
Analizează-ți jocul!

După ce ați decis la ce vă veți dedica pentru săptămâna viitoare de codare, este timpul să scrieți ceea ce necesită jocul, astfel încât să aveți o viziune mai bună despre modul în care este configurat jocul!

De exemplu, Tic-Tac-Toe 3x3 ar avea nevoie de 9 spații goale în care utilizatorii să poată imprima fie în „X”, fie în „O”. Apoi, am avea nevoie de încă 9 spații libere pentru a corespunde și a salva mișcările utilizatorilor. Ar trebui să fac ceva pentru a trece înainte și înapoi între „X” și „O” de fiecare dată când un jucător își termină mandatul. Ar trebui, de asemenea, să bucle procesul de comutare și salvare a mișcărilor până când va fi un câștigător mai târziu, luând în considerare exact 3 aceleași simboluri consecutive în direcție orizontală, verticală sau diagonală.

Practic asta e! Nu trebuie să faceți mai mult decât atât … încă, presupunând că nu aveți experiență anterioară cu foarte puține cunoștințe despre Python! Acum … următorul pas vă va cere să vă întrebați mult despre cum să convertiți ceea ce ați analizat … în cod!

Pasul 3: modelează-ți analiza în gramatică „informatică”

Modificați analiza în
Modificați analiza în

Până acum, ar trebui să înțelegeți unde merge jocul, în capul dvs., în limba dvs., cu logica dvs.! Ei bine … computerul nu o va înțelege; și din moment ce avem mult mai multă inteligență, ar trebui să facem prima mișcare pentru a vorbi în limba sa.

Înapoi la Tic-Tac-Toe, ca exemplu, referindu-ne la Pasul 2, ceea ce am nevoie mai întâi este de câteva 9 spații goale pentru a stoca mișcările utilizatorilor. O modalitate ar putea fi de a-i spune lui Python să facă o listă care să conțină cele 9 spații! Și pe măsură ce utilizatorii tastează mișcările lor, înlocuiți chiar spațiul respectiv cu „X” sau „O” la rândul lor. Pot folosi un fel de funcții de buclă în Python pentru a ajuta la repetarea procesului de mai multe ori până când există o egalitate sau … un câștigător! Modul în care determin câștigătorul este să folosesc o condiție, ca jocul să continue în buclă dacă nu se întâmplă nimic sau altfel dacă toate cele 9 spații sunt ocupate sau dacă există un câștigător, bucla se fixează și jocul se termină!

Acest pas este, nu este nevoie să ne certăm, cel mai greu pas din acest întreg instructabil! Acum, trebuie să folosiți logica umană pentru a vedea cum puteți converti ceea ce ați scris în Python. Nu trebuie să vă faceți griji dacă Python este capabil să vă gestioneze toată imaginația, are suficiente materiale de codare pe care să le puteți satisface! Dacă nu găsiți calea (ceea ce ar fi de obicei cazul), un motor de căutare pe care îl recomand este Stack Overflow, este o comunitate mică în care oamenii se întreabă de obicei cele mai absurde întrebări pe care le-am văzut vreodată și, de asemenea, unde există sunt unele dintre cele mai strălucite răspunsuri pe care le poate obține oricine!

RĂMÂNIȚI CU MINE AICI! Următorii 7 pași, îți voi arăta 7 metode de Python pe care le-am considerat necesare în fiecare până la cel mai simplu joc de joc! Să înceapă cursul accidental!

Pasul 4: Tipărirea declarațiilor, numerelor sau obiectelor - Imprimare ()

Tipărirea declarațiilor, numerelor sau obiectelor - Imprimare ()
Tipărirea declarațiilor, numerelor sau obiectelor - Imprimare ()

Acesta este probabil cel mai fundamental lucru din Python! Dacă nu puteți tipări nimic, oricât de stelar este programul dvs., este inutil pentru lume. Modul în care funcționează este: print ([introduceți ceva aici]). De exemplu, print („Ești inteligent”) va face ca Python să tipărească „Ești inteligent” (AVERTISMENT: Nu contează dacă folosești ghilimele simple sau ghilimele duble, trebuie să folosești una dintre ele și trebuie să începi și să termini șir cu aceeași specie de citat!). Continuați să vă jucați cu funcția print (), faceți ca Python să imprime tot ceea ce vă face să vă simțiți bine (Asta aș face eu!). Până când simțiți că puteți trece la pasul următor, puteți face orice cercetare suplimentară despre print () pentru o înțelegere mai profundă, dacă doriți, prin Google sau Stack Overflow.

print ("Da, sunt aici!")

print („Sunt atât de bun omg”)

P / S: Puteți pune ghilimele duble în bariera ghilimelelor simple și invers, dar nu puneți același lucru unul în celălalt sau … veți vedea la ce mă refer!

Proiectul meu Tic-Tac-Toe … desigur, necesită o mulțime de tipăriri, de la tipărirea plăcii și a interfeței utilizatorului până la confirmarea stării jocului.

Pasul 5: Creați o listă pentru a conține diverse obiecte -

Creați o listă pentru a conține diverse obiecte -
Creați o listă pentru a conține diverse obiecte -

O listă conține fiecare variabilă în care doriți să o introduceți, este cu adevărat un cadou pe care Python îl face! Acum tot ce trebuie să stabiliți una este să îi dați un nume, să puneți paranteze pătrate, să separați variabilele cu virgule sau puteți să o lăsați goală (astfel încât să le puteți adăuga mai târziu) și sunteți gata de plecare! AVERTISMENT: Nu doriți să îl denumiți după unele metode sau va exista o eroare de sintaxă, dacă numele apare în alte culori decât negru, clopotul dvs. ar trebui să fie pornit imediat!

dalist = [5, 7, „Sunt frumos”, 12 + 1, 3.141592657]

sau…

dalist =

dalist.append (5) # acum dalist are [5] ca element!

Vă amintiți placa de 9 spații despre care v-am spus? Aici va fi folosit! Va stoca toate „-” la început; iar pe măsură ce jucătorul trage în mișcare, simbolul lor va înlocui „-”. Toate elementele dintr-o listă încep de la 0, deci 0 se referă la primul element, 1 se referă la al doilea element și așa mai departe. Un exemplu ideal ar fi: vă rugăm să lucrați din greu pentru a vă imagina aici, că cele 3 puncte 0, 1, 2 sunt primul rând al plăcii 3x3. Dacă dalistul [0] și dalistul [1] și dalistul [3] se referă toate la același simbol, atunci avem un câștigător! Vezi, lista poate fi extrem de utilă și mai simplă decât crezi! Mai multe cunoștințe despre lista Python pot fi găsite prin Google sau Stack Overflow.

Pasul 6: Stabiliți condițiile pentru comenzi - Dacă, Elif și Altele

Stabiliți condițiile pentru comenzi - If, Elif & Else
Stabiliți condițiile pentru comenzi - If, Elif & Else

Viața nu se întâmplă întotdeauna așa cum vrei să fie și, uneori, vei face acest lucru numai dacă scenariul îți îndeplinește cerințele. La fel și pentru Python! Nu ai vrea să treacă prin toate situațiile, pentru că este o durere reală! Acesta este motivul pentru care condiția if este atât de utilă. Funcționează exact ca modul în care este interpretat, comanda (comenzile) din interiorul că dacă blocul va fi efectuat numai IF numai atunci când îndeplinește ceea ce cereți. De exemplu, veți imprima declarația „Yessss” DACĂ modul dvs. fericit este adevărat (presupunând că identificatorul este deja declarat în prealabil):

fericit = adevărat

dacă fericit == adevărat:

print („Yessss”)

Dacă există un IF, de obicei va exista un ELSE pentru restul scenariilor care nu corespund condiției stabilite anterior. Spuneți, când sunteți trist, veți imprima în schimb „Noooo” (continuarea afirmației if de mai sus):

altceva:

print ("Noooo") # Dar oricum nu va imprima acest lucru, nu vă faceți griji!

Există un tip special de if în Python pe care îl numim ELIF. Din numele în sine, probabil ați putea distinge că este combinația dintre if și else. Deci, dacă aveți două sau mai multe condiții, elif este tipul pe care l-ați apela (scorul presupus este atribuit unor numere aleatorii înainte de aceasta):

scor = 65

dacă scorul> = 90:

print („Bună treabă!”)

elif 80 <= scor <90:

print („Efort bun!”)

elif 70 <= scor <80:

print („Ar fi putut fi mai bine!”)

altceva:

print („Ei bine ……”)

AVERTISMENT: Indentarea contează aici! Acesta va determina comenzile care aparțin declarației if, elif sau else. Deci, aveți grijă la proiectarea codului dvs.! Puteți, de asemenea, să cuibăriți dacă instrucțiunile împreună ar trebui ca o condiție să fie luată în considerare DOAR atunci când cea mai exterioară, dacă este adevărată mai întâi. Și din nou … Indentare!

În proiectul meu Tic-Tac-Toe, am folosit literalmente tone dintre acestea. Jocul 3x3 poate suna suficient de simplu, dar va trebui să luați în considerare o serie de scenarii care ar putea avea loc. În acest caz, trebuie să mă gândesc dacă există sau nu un câștigător, verificând cele 3 note consecutive în toate direcțiile. Da … acum nu vă confundați, deoarece nici nu este atât de complicat, este doar o serie de coduri redundante și tot ce trebuie să faceți este să schimbați zona de verificare și gata! Mai multe informații despre acest subiect, faceți clic pe Stack Overflow.

Pasul 7: Mai multe condiții în total - și & Or

Mai multe condiții în total - și & Or
Mai multe condiții în total - și & Or

Cine a spus că o condiție poate fi întotdeauna numai condiție? O singură condiție ar putea avea, de asemenea, criterii multiple. În timp ce instrucțiunea imbricată poate fi o soluție pe termen scurt, aceasta face codul mult mai lung. Deci există metodele AND & OR. Toate sunt folosite pentru combinarea condițiilor împreună într-un mare tratat. Singura diferență dintre ele este aceea și necesită toate condițiile din acea declarație if pentru a fi corectă înainte de a trece mai departe; în timp ce sau are nevoie doar de unul dintre ei pentru a fi corect. Ambele pot fi foarte utile dacă sunt folosite corect, pot fi înțelepți sau acești doi ar putea să se încurce cu logica creierului tău!

n = 5

a = 7

dacă n == 5 și a == 6:

print („Nu ar trebui să tipăriți acest lucru”)

dacă n == 3 sau a == 7:

print ("Yupp ar trebui să tipărească acest lucru")

Am folosit serios și & sau pentru a-mi scurta dramatic Tic-Tac-Toe, deoarece uneori există până la 3 condiții simultan, când trebuie să iau în considerare toate cele 3 poziții ale marcajului pentru a determina dacă există sau nu un câștigător. Și & sau ar fi foarte util! Pentru mai multe detalii, vizitați Stack Overflow.

Pasul 8: O buclă care repetă comenzi până la îndeplinirea criteriilor - În timp ce

O buclă care repetă comenzi până la îndeplinirea criteriilor - În timp ce
O buclă care repetă comenzi până la îndeplinirea criteriilor - În timp ce

Am analizat modul de tipărire, procesare a lucrurilor numai atunci când condiția este adevărată. Deci, ce zici de … repetarea blocului de mai multe ori, până la îndeplinirea condiției? Da, de aceea Python îți oferă un timp!

n = 1

în timp ce n = 1:

print ("hooooo") # Da, acest lucru va imprima "hooooo" pentru totdeauna … și pentru totdeauna … de fapt … pentru totdeauna … și pentru totdeauna …

Aceasta poate fi o problemă, deoarece nu doriți ca comenzile dvs. să se bucure la nesfârșit. Deci, de obicei, când utilizați while, există o tehnică prin care schimbați valoarea afecțiunii de fiecare dată când apare, deci condiția este actualizată și până când va avea nevoie de criterii, se va opri în cele din urmă. De exemplu, puteți adăuga valoarea la sine cu o unitate la un moment dat, apoi puteți seta timpul să funcționeze până la un fel de valori pe care numărul le va atinge în cele din urmă:

n = 1

în timp ce n <5:

print ("Am" + n + "beri boiiiii!")

n = n + 1 #sau puteți scrie și n + = 1

Cum va funcționa acest lucru n va continua să se adauge la 1 la sfârșitul fiecărui bloc de cod. Bucla while se va bucla atâta timp cât n este încă mai mic de 5. Acum, până la un moment (în mod specific bucla de 4 ori), n va atinge valoarea de 5 și bucla se va opri!

fericit = adevărat

în timp ce fericit:

print („Yayyy am făcut-o!”) # Nu faceți asta de fapt, dar ați meritat să știți că veți ajunge întotdeauna acolo!

Deși poate fi util în special în jocuri precum Tic-Tac-Toe, cel de verificare a erorilor. Uneori trebuie să-ți permiți utilizatorilor răutăcioși și, dacă continuă să deranjeze, bucla while îi va ține la distanță până când se comportă ei înșiși și introduc anumite intrări valide! Mai multe informații la Stack Overflow

Pasul 9: While Loop Versiunea 2.0 - Pentru

While Loop Versiunea 2.0 - Pentru
While Loop Versiunea 2.0 - Pentru

Există cu siguranță unele situații care FOR vor fi detronate de când, dar for face altceva pentru tine, care în timp ce nu poate … Deține valoarea în care se va bucla, cere utilizatorului să stabilească intervalul de looping (Da, pentru bucla nu se buclă niciodată pentru totdeauna … de fapt …), și poartă valoarea buclei de fiecare dată când se transformă, de asemenea! Acum s-ar putea să fiu prea vorbitor, dar ia în considerare acest exemplu, să spunem că tm este valoarea pe care vrei să o continui cu bucla for:

pentru tm în intervalul (1, 5):

print ("Am avut deja" + tm + "beri urghhh") # Aceasta va tipări "Am avut deja 1 ….5 beri urghhh"

Vedeți, vă economisește o singură linie de cod, dar vă va face viața mult mai ușoară pentru codificarea jocurilor (credeți-mă, am învățat acest lucru în mod greu și nu doriți să știți despre asta)! De obicei, ar trebui să mergeți pentru bucla FOR dacă ați definit cu tărie în minte de câte ori doriți să se repete un bloc de cod. AVERTISMENT: Variabila care a fost purtată împreună cu bucla for va exista doar în bucla for însăși, dacă vă referiți la ea oriunde în afara buclei for, Python va începe să vă muște și vă va întreba „La ce naiba vă referiți ???"

Tic-Tac-Toe folosește o mulțime de bucle pentru. Nu vă puteți permite să verificați totul de fiecare dată când o variabilă se schimbă (o durere reală argh). Dar ceea ce am făcut a fost să descopăr regula anatomiei Tic-Tac-Toe, să schimb valoarea în bucla for, să verific toate cele 3 coloane de simboluri, cu mine trebuind doar să învăț Python cum să verific una! Asigurați-vă că verificați Stack Overflow pentru mai multe întrebări.

Pasul 10: Solicitați intrările utilizatorilor - Intrare ()

Solicitați intrările utilizatorilor - Intrare ()
Solicitați intrările utilizatorilor - Intrare ()

Nu în ultimul rând, tu ești creatorul jocului și cineva îți va juca jocul! Și nu poți ghici niciodată ce fac. Deci, ceea ce puteți face este să faceți ceea ce le-a spus programul dvs. să facă, lăsați-i să introducă direct lucruri! Împreună, INPUT și PRINT ar putea fi probabil cele mai fundamentale metode din Python, veți avea nevoie pentru a supraviețui (Sunt în fiecare cod de joc, pot garanta 100,00%)! Acest lucru este suficient de simplu, doar atribuiți o variabilă și lăsați-o să fie ceea ce dorește utilizatorul să fie:

alo = input („Introduceți numărul norocos!”)

AVERTISMENT: Există multe tipuri de intrări, mai multe despre Stack Overflow. Vor funcționa întotdeauna dacă o lăsați doar input () așa. Dar, uneori, s-ar putea să doriți să fie specific ca o intrare întreagă sau o intrare float (implicit este șir).

lucky_day = int (input ("Da, este ziua ta norocoasă! Introduceți un număr aici:") #Nu tastați litere acum, nu doriți # să vă încurcați cu Python!

Tic-Tac-Toe are nevoie de o grămadă de asta! Sunt sigur că poți să-l faci tu singur, din modul în care știu unde merg utilizatorii și la ce urmăresc (Ai înțeles bine, nu știu … dar am folosit input ()!).

Pasul 11: Faceți cercetări suplimentare pentru toate metodele de care aveți nevoie

Faceți cercetări suplimentare pentru toate metodele de care aveți nevoie!
Faceți cercetări suplimentare pentru toate metodele de care aveți nevoie!

Da, nu trebuie să știți totul despre Python pentru a crea un joc, de fapt trebuie să știți suficient, începând cu Ultimate 7 (Pasul 4-10, sunt sigur că va trebui cumva să le atingeți pe fiecare pentru un joc), și dacă nu crezi că toate aceste 7 pot satisface ceea ce faci. Python are o mulțime de surprize și, uneori, există unele metode de terminologie care sunt pentru acea utilizare foarte specifică, nu se știe niciodată. Deci, asigurați-vă că le căutați folosind Google sau Stack Overflow!

Tic-Tac-Toe-ul meu a folosit toate cele „Șapte mari” și câteva altele, dar nu mult. Sunt sigur că oricine o poate face!

Asigurați-vă că le scrieți pe hârtie și jucați-vă cu tot ce aveți nevoie pentru a juca, înțelegeți problema înainte de a vă agăța de ea. Te simți suficient de pregătit? Să trecem la … ultimul pas !!! RĂMÂNIȚI-VĂ CU AICI, aproape că sunteți acolo!

Pasul 12: Construiți un cadru de schelet pentru codul dvs. care funcționează

Construiți un cadru de schelet pentru codul dvs. care funcționează!
Construiți un cadru de schelet pentru codul dvs. care funcționează!

Nu vreau să te descurajez deloc, dar dacă vrei să creezi un joc care să funcționeze pentru toată lumea, trebuie mai întâi să lucreze legitim, începând cu tine! Adunați toate materialele de care aveți nevoie, configurați cadrul. Știu că este mai ușor de spus decât de făcut, dar cu toate lucrările pregătite (dacă ai făcut ceva așa cum ți-am spus), ar trebui să fii bun să mergi.

Nu deranjați erorile de sintaxă la început. Este important să vă terminați codul fără nicio întrerupere, numai atunci când ajungeți într-un impas pe care ar trebui să îl opriți. Noi, oamenii, suntem sensibili la fluxurile de gândire, am întâlnit o situație în care totul curgea atât de lin și fluent, decât am mers la baie … Următorul lucru pe care l-am știut, am pierdut gândul. Deci da, nu mai repeta după mine! Lăsați totul în cap în timp ce este încă acolo și este proaspăt mai întâi.

Procesul Tic-Tac-Toe include solicitarea intrării utilizatorului, folosind input (), utilizați while pentru a purifica numai intrările valide. Apoi, un set de if elif else, for și while, sunt dispuse pentru a verifica de fiecare dată dacă există un câștigător. Nimeni nu câștigă, iar bucla while va face jocul să continue până când vor fi ocupate unul sau toate cele 9 spații, rezultând o egalitate.

După ce v-ați asigurat că acesta este jocul, începeți să rulați programul și să căutați sintaxă sau erori semantice mai târziu. Și, din nou, construiți-vă mai întâi un joc pentru dvs., NU faceți tot creativitatea balistică înainte ca rama dvs. originală să fie chiar acolo. Acum, faceți-o și continuați! Jocul tău este acolo, ce mai aștepți ???

Pasul 13: Ieșiți acolo, testați-vă și faceți-vă un JOC

Scoate-te acolo, testează-te și fă-ți un JOC!
Scoate-te acolo, testează-te și fă-ți un JOC!

Asta e! Tot ce trebuie să faceți acum este să nu vă irosiți toate eforturile dinainte, puneți-vă acolo! Cred că dacă urmezi toți acești pași, vei fi absolut suficient pentru a crea un joc. Dacă nu, nu renunțați, încercați; Acest instructabil este de a ajuta pe toată lumea, dar numai tu poți decide soarta JOCULUI! Amintiți-vă, nu renunțați, construiți mai întâi cadrele scheletului. Dacă există erori de sintaxă ciudate pe care nu le puteți vedea, căutați ajutor prin Stack Overflow, chestia asta mi-a rămas groasă și subțire!

Oricum, pentru a încheia, noroc în călătoria ta cu Python, programează un joc, fă-mă mândru, pentru că SUNTEM PROGRAMATORI ZZZZZZZ !!!!!

P / S: Pasul 14 pentru încurajare creativă!

Pasul 14: * EXTRA! * După ce a funcționat versiunea 1.0, destinat creativității

* EXTRA! * După ce a funcționat versiunea 1.0, destinat creativității!
* EXTRA! * După ce a funcționat versiunea 1.0, destinat creativității!

Dacă tot citești asta, minunat! Nu trebuie, dar vreau doar să vă anunț după ce totul funcționează fără probleme, DOAR decât puteți edita, astfel încât și alții să poată folosi programul; decorați-l din nou pentru a fi ușor de jucat; sau actualizați-vă jocul (mi-am actualizat Tic-Tac-Toe programând un AI! Acum mi-a luat o săptămână (sau 7/8 din timpul meu) pentru a finaliza!). Asigurați-vă că utilizați și valorificați Stack Overflow dacă apare orice întrebare. Ți-am dorit mult noroc, completează-ți jocul, împărtășește-l în comentariul de mai jos și răspândește mișcarea de codare !!!

SUNTEM PROGRAMATORZZZZ !!!!!

Recomandat: