Ghidul începătorului pentru programarea orientată pe obiecte Python

Ghidul începătorului pentru programarea orientată pe obiecte Python / Programare

Python este folosit în orice, de la Raspberry Pi la mașină de învățare. Dacă doriți să lucrați cu orice proiect mare, va trebui să știți cum funcționează Python cu programarea orientată-obiect (OOP). Acest articol va acoperi principalele lucruri pe care trebuie să le cunoașteți.

Dacă nu sunteți de fapt în programare, de ce nu aruncați o privire la cele mai bune schițe ale lui Monty Python în loc de 8 din cele mai bune schițe ale lui Monty Python, Circuite de zbor [Lucru de urmărit] 8 din cele mai bune schițe ale lui Monty Python alte cateva trupe de comedie au spart teren atat de nou pe care la facut Monty Python cand au fost difuzate pentru prima oara pe BBC in 1969. Nu numai ca a fost umorul proaspat, bine livrat si foarte, foarte ... Citeste mai mult? Ei au inspirat limba, la urma urmei!

Așteaptă, Python nu este o limbă reală?

Să arătăm un lucru clar: Python este un limbaj de programare real, este popular și crește rapid. Doar pentru că citește ca pseudocod și puteți codifica Minecraft pe Pi cu ea Aflați Python și Electronics cu Minecraft Pi Edition Aflați Python și Electronics cu Minecraft Pi Edition Voi ați vrut mereu să învățați să codificați, dar nu știați de unde să începeți? Aflați cum să controlați Minecraft pe Raspberry Pi folosind Python și unele electronice simple. Citiți mai mult, nu înseamnă că trebuie să o reduceți ca pe o limbă mai mică.

OOP este piatra de temelie a dezvoltării software moderne, iar Python este mai mult decât capabil să țină pasul. Poate face unul sau două lucruri diferit de alte limbi de masă, dar nu lăsați-o să te despartă.

Acest tutorial va presupune o cunoaștere de bază despre Python, dar vom acoperi toate lucrurile complexe de-a lungul drumului. Dacă sunteți nou la Python, de ce să nu vă uitați la aceste trucuri pentru a învăța un nou limbaj de programare 7 Trucuri utile pentru mastering un nou limbaj de programare 7 Trucuri utile pentru mastering un nou limbaj de programare Este bine să fiți copleșiți când învățați să codificați. Probabil veți uita lucrurile cât de repede le veți învăța. Aceste sfaturi vă pot ajuta să păstrați mai bine toate informațiile noi. Citește mai mult sau cum despre un simplu proiect, cum ar fi citirea și scrierea pe foile Google cu Python Cum se citește și se scrie pe foile Google cu Python Cum se citește și se scrie pe foile Google Cu Python Python poate părea ciudat și neobișnuit, totuși este ușor pentru a învăța și a folosi. În acest articol, vă vom arăta cum să citiți și să scrieți în Foi de calcul Google folosind Python. Citeste mai mult ?

Python Cerințe preliminare și configurare

Înainte de a începe, vă recomandăm să vă configurați mediul de dezvoltare Python. Vom folosi Python 3.6.5 și în timp ce puteți utiliza versiuni mai vechi, veți avea mai puține probleme urmând de-a lungul timpului dacă utilizați o versiune destul de nouă.

Veți dori să creați un mediu virtual Aflați cum să utilizați mediul virtual Python Aflați cum să utilizați mediul virtual Python Fie că sunteți un dezvoltator experimentat Python, fie că începeți să învățați cum să configurați un mediu virtual este esențial pentru orice proiect Python. Citiți mai multe dacă nu aveți deja unul și instalați PIP pentru Python Cum să instalați PIP pentru Python pe Windows, Mac și Linux Cum să instalați PIP pentru Python pe Windows, Mac și Linux Mulți dezvoltatori Python se bazează pe un instrument numit PIP pentru Python pentru a face totul mult mai ușor și mai rapid. Iată cum se instalează PIP. Citiți mai mult dacă nu este instalat (vine cu majoritatea instalărilor Python moderne). Odată ce ai setările, vei fi bine să pleci. Să începem!

Bazele Python: clase

A clasă este blocul de bază al OOP. O clasă este ca un plan sau un plan. Ele definesc caracteristicile unui obiect Ce este programarea orientată pe obiecte? Bazele explicate în termeni de Layer Ce este programarea orientată pe obiecte? Elementele de bază explicate în termeni de laici Cele mai multe limbi de programare moderne sprijină paradigma "programare orientată pe obiect" (OOP). Dar ce este exact OOP și de ce este atât de util? Citeste mai mult . Dacă aveți o clasă de mașini, de exemplu, se poate afirma că există patru roți, cel puțin un scaun și un motor.

Iată cum să faceți o clasă în Python:

Vehicul de clasă: "" "Această clasă definește vehiculele." "" treci 

Simplu drept? Sunt câteva lucruri care se întâmplă aici. Observați comentariul din partea de sus a clasei. Acesta este un comentariu special numit a docstring. Ar trebui să explice un pic despre codul dvs. Utilizând ghilimele triplu (“””), îi spui lui Python că acesta este un docstring.

trece cuvântul cheie spune Python nu face nimic. Este un cuvânt special și te poți gândi la asta ca la un todo. Aceasta va face ca codul dvs. să ruleze, dar de fapt nu face nimic.

Dacă executați acest cod, veți vedea că nu se întâmplă nimic. Trebuie să instantiat clasa ta. Acest lucru înseamnă în mod eficient să mergeți și să construiți un obiect bazat pe planul definit în clasă. Puteți crea câte exemplare doriți, fiecare cu proprietăți diferite. Iată cum faceți acest lucru:

red_car = Vehicul ()

Dacă rulați din nou, veți vedea că nu se întâmplă nimic. Codul funcționează corect, dar nu i-ați spus să facă ceva vizibil. Vehicul clasa definește planurile pentru un vehicul, iar această ultimă linie creează un obiect de vehicul și îi dă numele mașină roșie.

Este posibil să faceți cât mai multe obiecte pe care le doriți:

red_car = Vehicul () green_car = Vehicul () blue_car = Vehicul ()

Să adăugăm un cod mai mult. Adăugați o metodă numită __init__ la Vehicul clasă:

clasa vehiculului: "" "Această clasă definește vehiculele" "" def __init __ (auto, culoare = "simplu"): "" culoare red_car = Vehicul () green_car = Vehicul () blue_car = Vehicul ()

Acordați o atenție deosebită acestui lucru __init__ metodă. Trebuie să înceapă și să se încheie cu două sublinieri. Aceasta este o metodă specială în Python. Se numește automat când creați un obiect nou. Rularea acestui cod va afișa cuvintele “Noua mașină făcută!” de trei ori.

In cele din urma, __init__ ia un argument personalizat numit culoare. Semnul egal și șirul imediat următor indică Python-ului pentru a seta culoarea la “simplu” dacă nu este specificat. Puteți modifica instanțele pentru a configura culoarea mașinii la creație:

red_car = Vehicul (culoare = 'roșu') green_car = Vehicul (color = 'verde') blue_car = Vehicul (culoare = 'albastru')

Dacă imprimați culoarea mașinii, veți vedea că fiecare instanță are o culoare diferită, chiar dacă toate cele trei au fost făcute la aceeași specificație (clasa). Python vă permite să accesați aproape orice variabilă sau obiect - nu multe alte limbi vă permit să faceți acest lucru:

print (red_car.color) print (green_car.color) imprimare (blue_car.color)

Acest lucru funcționează pentru că ați alocat culoare la self.color. Sine este un alt cuvânt cheie special în Python și se referă la fiecare instanță specifică a unei clase. Ori de câte ori utilizați auto, puteți seta sau accesa date unice pentru acea instanță. Masina roșie are o culoare roșie, de exemplu.

Modificați-vă __init__ metodă pentru stocarea zgomotului mașinii într-o variabilă:

self.noise = 'Vroooom'

Pentru a imprima zgomotul mașinii, puteai accesa doar zgomot variabilă, așa cum ați făcut cu culoarea, dar aceasta nu este cea mai bună idee. Ce se întâmplă dacă, când conduci o mașină, vrei să rulați un alt cod în același timp, poate codul pe care încă nu l-ați scris? Sau dacă vrei să schimbi modul în care conduce o mașină în viitor? Prin crearea unui funcţie (cunoscut și ca a metodă), puteți controla strans modul în care funcționează lucrurile. Adăugați acest lucru mai jos __init__ metodă:

def drive (auto): imprimare (auto.noise)

Puteți numi această metodă pur și simplu:

red_car.drive ()

Ori de câte ori apelați conduce , Python va imprima sunetul. Puteți extinde acest lucru pentru a efectua toate conturile de sarcini, dar lăsați-l ca acum.

Foarte bine! Până acum, ar trebui să aveți o apăsare fermă pe elementele de bază. Ar trebui să vă puteți crea și utiliza propriile clase, fiecare având abilitățile și funcțiile sale unice.

Despre variabilele private din Python?

Obiectele private sunt foarte frecvente în majoritatea celorlalte limbi. Ele sunt pur și simplu variabile sau funcții care nu pot fi accesate în afara clasei. Acestea pot fi coduri care necesită îndeplinirea unor condiții speciale înainte de utilizare sau pur și simplu concepute numai pentru uz intern. Indiferent de motiv, instanțele nu pot accesa membrii privați ... decât dacă codificați în Python.

Python nu are membri privați. În schimb, Python se bazează pe un sistem de onoare: “Toți suntem adepți.” Programatorii programului Python înțeleg că ați putea dori să vă dați cu interiorul sensibil al unei clase, și asta e bine, deci nimic nu ar trebui să fie cu adevărat inaccesibil.

Cu toate acestea, Python are o convenție acceptată pentru marcarea anumitor variabile ca “privat” în ideea de “Această variabilă este pentru uz intern și probabil că nu aveți nevoie să o atingeți.” Convenția este de a prefixa numele variabilelor cu o subliniere:

_some_secret_variable = 42

Acest lucru este un avertisment pentru alți programatori. Python nu vă va împiedica să accesați acest lucru, dar sublinierea vă sfătuiește că acest lucru nu a fost conceput pentru a fi utilizat în acest fel și ar trebui să continuați pe propriul risc.

Este uneori calea Python de a face rost de lucruri ascunse, dar riscați ca lucrurile să nu funcționeze corect.

Înțelegerea moștenirii în Python

Moștenirea este o altă modalitate de a reduce codul de duplicare și reutilizare. Gândindu - se la o relație părinte - copil, moștenirea permite copil pentru a partaja codul comun cu mamă. Să implementăm o mașină electrică, care moștenește de la părinte.

Adăugați acest cod sub dvs. Vehicul clasă:

(electric): electric_car.noise = 'Whoosh' electric_car.drive () electric_car.dll () electric_car.noise =

După Mașină electrică este definit, Vehicul clasa este specificată în interiorul a două paranteze. Acest lucru îi spune lui Python Mașină electrică este un copil de Vehicul. Acest lucru îi oferă acces la toate datele și metodele furnizate în Vehicul.

Masina electrică are propriile sale metode speciale. Se poate încărca (ceva ce alte vehicule nu pot face). Prin schimbarea zgomotului mașinii și apoi prin conducere, puteți vedea că mașina electrică produce un sunet diferit și nu a fost necesar să definiți metoda de antrenare. Acest lucru se datorează faptului că unitatea este moștenită de la părinte.

Extindeți cunoștințele dvs. despre Python și mai departe

Aceste exemple au arătat cât de ușor poate fi OOP în Python. Tocmai am acoperit doar elementele de bază, dar odată ce le-ați scăpat, restul este ușor.

Dacă doriți să continuați să învățați Python sau, probabil, să puneți aceste abilități OOP în practică, de ce să nu aruncați o privire asupra matricelor și listelor din Python sau cum să obțineți Python și JavaScript pentru a comunica?

Dacă toate acestea ți-au părăsit dorința de mai mult, atunci nu uitați să verificați aceste site-uri cele mai bune pentru a învăța Python Cele 5 cele mai bune site-uri Web pentru a învăța Python Programarea Cele mai bune 5 site-uri web pentru a afla Python Programming Doriți să învățați programarea Python? Iată cele mai bune modalități de a învăța Python online, dintre care multe sunt gratuite. Citeste mai mult .

Explorați mai multe despre: programarea orientată pe obiecte, programare, Python.