Cel mai bun mod de a învăța Python

Python este mai popular decât oricând și este folosit peste tot de la serverele web back-end, la dezvoltarea jocurilor de la începutul jocului și totul între ele. Python este un adevărat limbaj cu scop general și devine rapid un instrument necesar în arsenalul oricărui programator care se respectă de sine.

Dar Python nu este popular doar pentru că este popular. Este ușor de învățat, citește codul pseudo-cod și este agil. Cu toate acestea, învățarea oricărei noi limbi poate fi o sarcină descurajantă, iar găsirea locurilor potrivite și a oamenilor de a învăța este jumătate din bătălie. Aici poate ajuta acest ghid. Acesta este planul dvs. pentru a face Python ușor, distractiv și plină de satisfacții pentru a învăța.

Căutați o comandă rapidă?

Acest articol oferă o mulțime de resurse, dar dacă preferați ceva mai structurat, programul Envato Introducere în Python vă oferă un set cuprinzător de lecții video care vă vor ajuta să vă ridicați viteza cu Python pentru doar 5 dolari.

Alocarea 1: Începeți cu elementele de bază

La momentul acestei scrieri, există două versiuni principale ale Python în circulație: Python 2.7 și Python 3.2. Ceea ce alegi să înveți într-adevăr nu contează prea mult, deoarece diferențele vor fi minime - mai ales pentru un începător. Dar ar trebui să știți că, în timp ce Python 2 are o susținere mult mai mare, Python 3 este punctul central al dezvoltatorilor care proiectează limba. Alegerea este a ta, dar dacă codul dvs. acționează diferit față de orice tutorial dat, asigurați-vă că utilizați aceeași versiune Python folosită în tutorial.

Wikibooks non-programatori Tutorial pentru Python

Wikibooks este întotdeauna o sursă excelentă pentru a învăța ceva nou, iar Python nu face excepție. Aici veți găsi o serie de ghiduri care vă vor învăța corzile lui Python. Nu devine prea tehnic, și puteți să sarăți în codificarea ceva ceva util și plină de satisfacții destul de repede. Din acest motiv, recomand acest site ca fiind cel mai bun loc pentru a începe pe călătoria dvs. Python.

Tutorialul oficial Python

Nu veți găsi o sursă de informații mai bună decât documentația oficială python.org. Cu toate acestea, dacă doriți să sari direct, așa cum sunt sigur că mulți dintre voi vor, acest lucru ar putea să nu fie cel mai bun loc pentru a începe.

Conținutul tinde să fie mai tehnic decât wikibooks, ceea ce va fi util ulterior pe măsură ce progresați prin limbă. Dar, pentru un începător, s-ar putea doar să înfruntă ceea ce este într-adevăr un limbaj foarte simplu și frumos.

Pentru începători, cea mai mare diferență dintre Python 2 și Python 3 va fi probabil cea pe care Python 2 o poate folosi imprimare fără paranteze. Python 3 necesită paranteze, dar asta e tot.

Cesiunea 2: Tutoriale și Screencast-uri

Tutorialele de programare Python din NewBoston

Playlisturile lui NewBoston sunt întotdeauna minunate și puteți învăța o mulțime de limbi. "Bucky" este un mare instructor pentru că el lovește un adevărat echilibru între a fi amuzant, fiind de asemenea ușor de ascultat. Îmi recomand foarte mult oricare dintre playlist-urile - în special lista de redare Python. El își asumă zero cunoștințe anterioare despre programare și vă va lăsa cu o înțelegere fermă a limbii.

Nettuts + lui Python de la zero

Un pic mai aproape de casă este introducerea lui Giles Lavelle în Python. La fel ca serialul TheNewBoston, Lavelle își asumă de asemenea o experiență de programare zero.

Dacă doriți să vedeți anumite aplicații din lumea reală ale aplicațiilor dvs. sau doriți să vizați dezvoltarea web cu Python, această serie ar putea fi cea pentru dvs..

Sesiunea de ecran vă duce de la nimic la construirea unui site dinamic utilizând un cadru web Python numit Django.

ShowMeDo lui ScreenStage Python

StackOverflow nu este doar plin de erori și probleme de "newbie".

ShowMeDo are un catalog urias de videoclipuri legate de Python. Deși este posibil să nu fie cea mai prietenoasă experiență în jur, videoclipurile variază de la nivel începător absolut la cele mai avansate tehnici Python. Este bine să verificați.

Construiți un bot Python care poate să joace jocuri pe Web

Acest tutorial este destul de specific în ceea ce privește ceea ce vei învăța și nu-l recomand pentru un începător complet. Cu toate acestea, simt că merită o mențiune. În acest ghid, Chris Kiehl vă arată cum să construiți un bot foarte interesant de Python care va juca un joc simplu pentru dvs. Tutorialul merge într-adevăr pentru a arăta puterea lui Python; acesta poate fi aplicat pentru a face sarcinile repetitive de zi cu zi pe care le puteți avea pe computer.

Cesiunea 3: cărți electronice gratuite!

Este greu să învingi o carte bună atunci când încerci să înveți ceva nou și cu marea comunitate care sa dezvoltat în jurul limbajului Python, există o mulțime de cărți electronice de înaltă calitate de care poți alege. Mai jos este o listă rapidă a unora dintre cele mai bune. Puteți descărca o versiune gratuită de cărți electronice pentru fiecare dintre ele sau puteți alege să cumpărați cartea fizică (sau să donați) dacă doriți să îl sprijini pe autor, ceea ce sunt sigur că va aprecia foarte mult.

Învață Python calea tare

În ciuda numelui, aflați Python Hard Way face învățarea Python incredibil de ușor - așa cum trebuie să fie! În această carte, Zed A. Shaw lucrează de la bază oferindu-vă un ghid detaliat și cuprinzător pentru Python, fără a obține în calea ta de codificare reală. Shaw este informal, dar aprofundat, făcând cartea o citire ușoară, dar plină de satisfacții.

Gândiți-vă la Python: Cum să gândiți ca un om de știință de calculator

Nu veți găsi o sursă de informații mai bună decât documentația oficială python.org.

Ca subtitlul ar putea sugera "Cum să gândești ca un om de știință pe calculator", Think Python rămâne puțin mai mult spre partea teoretică a lucrurilor. Acest lucru se poate dovedi un pic frustrant pentru un începător total, dar cartea este bine în valoare de citit în ceea ce privește teoria algoritmului și concepte de nivel înalt.

Inventați cu Python

Dacă "învățați prin practică" este lucrul dvs., atunci construirea propriului joc se va dovedi a fi o experiență plină de satisfacții! In aceasta carte, Al Sweigart nu isi asuma nici o cunoastere anterioara a Python-ului si iti ia tot drumul pentru a-ti construi propriul joc. Având în vedere că cartea este îndreptată spre dezvoltarea jocului, cartea se poate deplasa puțin repede pentru un începător total. Mai târziu, în acest articol, menționez o carte similară a lui în cazul în care el își asumă o cunoaștere prealabilă a Python. Dacă simți că ai o bună înțelegere a limbii, atunci și cealaltă carte ar putea fi o resursă mai bună pentru tine.

Cartea Django

Dacă doriți să învățați Python pentru dezvoltarea web, atunci probabil că veți folosi cadrul Django. Această carte presupune fluență în Python, dar îl învață pe Django ca și cum ați fi începător în cadrul. Cartea Django este la fel de bună ca și cum va veni și va fi de neprețuit pentru orice dezvoltator de web în devenire.

Python Books

Dacă nu aveți suficient să citiți încă sau doriți o carte pe un anumit subiect, atunci ar trebui să urmați acest link. Cei de la python.org au respectat o listă extinsă de cărți, sortată după dificultăți și subiecte.

Alocarea 4: Familiarizați-vă cu StackOverflow

Mii de dezvoltatori au experimentat fiecare problemă cu care trebuie să vă confruntați. StackOverflow este o resursă excelentă în care dezvoltatorii găsesc soluții la problemele lor. Când se întâmplă după o eroare pe care nu o știți cum să remediați, căutați StackOverflow. Veți găsi mai mult decât probabil o soluție și cum alte persoane și-au rezolvat problema.

Dar StackOverflow nu este doar plin de erori și probleme de "newbie"; există unii oameni cu adevărat inteligenți și de ajutor care folosesc site-ul - învățați de la ei!

Aruncați o privire la caracteristicile ascunse ale firelor Python, de exemplu.

Multe dintre sfaturile și trucurile pe care le vedeți aici nu pot fi acoperite în multe tutoriale formale, dar vor fi extrem de utile pentru utilizatorii Python intermediari sau avansați.

Cesiunea 5: Proiectul Euler

Proiectul Euler (pronunțat "Oil-er", pentru a vă salva mai târziu stânjenirea) este unul dintre site-urile mele preferate. După ce ați făcut un cont, puteți lucra prin intermediul celor 400 de probleme de pe site. Fiecare problemă este de aproximativ 50% matematică și 50% programare și, în opinia mea, cea mai plină de satisfacții pentru a afla mai multe despre fiecare subiect.

Problemele încep să testeze ușor cunoștințele despre limbă, dar cresc în dificultate pentru a provoca chiar și cei mai experimentați programatori. În cele din urmă, dificultatea problemelor vă va forța să găsiți algoritmul cel mai eficient - adică dacă nu doriți să așteptați orele pentru a calcula răspunsul.

Nimic nu te va transforma într-un expert de programare mai repede decât să te împingi pentru cele mai rapide și eficiente soluții pentru problemele proiectului Euler.

Când spargeți o nouă problemă, obțineți acces la firul de forum al problemei în care mulți oameni discută despre soluțiile și ideile lor unul cu altul. Multe dintre soluțiile din paginile ulterioare ale firului vor fi în Python. Aceasta este într-adevăr cheia pentru creșterea abilității de programare. Dacă este cineva cu o soluție mai rapidă decât a ta, ia-ți timp să o analizezi pentru a vedea de unde ai putea să îți îmbunătățești propria soluție. De-a lungul timpului, veți ridica toate trucurile comerțului și vă veți dezvolta cunoștințele despre Python într-o manieră semnificativă și plină de satisfacții.

În plus, există și câteva bloguri cu adevărat minunate care lucrează prin problemele proiectului Project Euler în Python. Dacă sunteți blocat pe o problemă, nu există nici o rușine în a avea un vârf mascate la munca altor dezvoltatori, atâta timp cât intenționați să învățați de la ea. Iată două dintre preferatele mele:

  • Dreamshire
  • Mycila

Alocarea 6: Construiește un joc

Puține lucruri sunt mai satisfăcătoare decât construirea propriului joc.

Puține lucruri sunt mai satisfăcătoare decât construirea propriului joc. Poate fi o curbă abruptă de învățare, dar merită și este foarte plină de satisfacții. PyGame este cea mai cunoscută bibliotecă de jocuri pentru Python și veți putea găsi multe tutoriale gratuite pe aceasta. Iată câteva dintre cele mai bune tutoriale PyGame. 

Documentația oficială PyGame

Ca și în cazul tutorialelor originale Python, dezvoltatorii de PyGame au, de asemenea, propriile documente de intro. Dar acestea pot fi prea tehnice daca vrei sa sari direct si sa incepi sa construiesti jocul. Documentația pentru dezvoltatori, cu toate acestea, va fi întotdeauna cea mai bună sursă de informații; așadar, vă recomandăm să vă familiarizați cu site-ul.

Inventați cu Python (cu PyGame)

Această carte electronică gratuită de către Al Sweigart rulează prin biblioteca PyGame, luându-vă de la zero cunoștințe pentru a construi câteva jocuri pentru tine. Jocurile simple vă vor oferi o platformă perfectă pentru a vă începe propriile proiecte, dacă sunteți atât de înclinat. Sweigart oferă observații detaliate și detaliate în tot codul său pentru a vă ajuta să învățați pe măsură ce mergeți.

TheNewBoston's Computer Game Development Tutorial

Acesta este un alt Playlist din TheNewBoston. Acesta serveste ca un intro la PyGame. Acesta presupune cunoștințe zero și vă oferă un sentiment bun pentru biblioteca PyGame, dar spre deosebire de ghidul InventWithPython, este mai mult la punct și nu vă va aduce la realizarea propriului joc complet.

Alocarea 7: cunoașterea unor biblioteci și instrumente comune

Python este un limbaj cu scop general care poate face aproape orice; astfel încât, desigur, există o aprovizionare aparent nesfârșită de biblioteci și instrumente acolo. Iată câteva dintre cele mai populare.

PyPy

Dacă doriți vreodată să ștergeți un cod HTML pentru unele informații ... BeautifulSoup va face toate acestea pentru tine și să adauge ani în viața ta.

Dacă faci o activitate intensă a procesorului și descoperi că Python se dovedește a fi o strangulare, poate că ai nevoie de PyPy. PyPy este un compilator alternativ pentru Python, care poate accelera procesarea.

NumPy + SciPy

Aceste două lucruri merg de obicei în mână (SciPy este NumPy dependent). Dacă faceți un număr mare de cercetări matematice sau științifice, atunci aceste două biblioteci vor fi cei mai buni prieteni. NumPy și SciPy extind funcțiile matematice și capabilitățile Python și pot accelera foarte mult unele dintre sarcinile dvs..

BeautifulSoup

BeautifulSoup este într-adevăr frumoasă. Dacă aveți nevoie să scrapeți o pagină HTML pentru unele informații, veți ști prea bine frustrarea și căderea părului pe care o poate aduce. BeautifulSoup va face totul pentru tine și va adăuga ani în viața ta. Foarte recomandat și distractiv pentru a juca cu.

Biblioteca de imagini Python

Biblioteca de imagini Python (PIL) este o bibliotecă extinsă care este excelentă pentru orice lucru legat de imagini. Dacă aveți nevoie să manipulați o imagine, este posibil ca PIL să o facă pentru dvs..

Django

Așa cum am menționat mai devreme în articol, cadrul Django este ceea ce probabil veți folosi dacă scopul dvs. este dezvoltarea web. Acesta este cel mai comun cadru web pentru Python și are, de asemenea, cele mai multe resurse disponibile.

Alocarea 8: implicați-vă în proiecte cu sursă deschisă

După ce ai o înțelegere decentă a limbajului, capacitatea de a citi și de a înțelege codul celorlalți este întotdeauna o abilitate importantă de a avea - să nu mai vorbim că este o modalitate foarte bună de a învăța prea.

Din acest motiv, proiectele open source sunt excelente. Github sau Bitbucket sunt pentru a merge la locuri pentru acest lucru. Nu vă faceți griji cu privire la persoanele care vă judecă codul, nu trebuie să contribuiți imediat. Sunteți întotdeauna liber să vă dați drumul unui proiect, să-i faceți singur și să vedeți cum funcționează lucrurile. Dacă se întâmplă să vezi ceva care crezi că ar putea fi îmbunătățit, grozav! Du-te pentru ea și să prezinte îmbunătățiri. Aceasta este sursa open source.

  • BitBucket
  • github
  • Git Essentials (Curs Sesiune)

Concluzie

Sper că am reușit să vă ofer o bază solidă de cunoștințe despre Python. Dacă există alte locuri de interes pe care credeți că ar fi trebuit să le includeți în această programă, anunțați-mă în comentariile de mai jos pentru a ajuta pe alții!

Cod