
Gabriel Brooks
0
2881
315
Python se koristi u svemu, od Raspberry Pi do strojnog učenja. Ako želite raditi na nekom velikom projektu, morat ćete znati kako Python djeluje s objektno orijentiranim programiranjem (OOP). Ovaj članak će pokriti osnovne osnove koje morate znati.
Ako se zapravo ne bavite programiranjem, zašto ne pogledati ove najbolje skice Monty Python, umjesto 8 najboljih skica Letećih cirkusa Monty Python [Stvari koje treba gledati] 8 najboljih skica Letećih cirkusa Monty Pythona [Stvari koje treba gledati] Vrlo dobro nekolicina drugih komičnih trupa razbila je toliko novih temelja kao Monty Python kad su prvi put emitirani na BBC-u 1969. Ne samo da je humor bio svjež, dobro raspoložen i vrlo, vrlo ...? Ipak su nadahnuli jezik!
Čekaj, Python nije pravi jezik?
Razjasnimo jedno: Python JE pravi programski jezik, popularan je i brzo raste. Samo zato što čita kao pseudocode i možeš kodirati Minecraft na Pi s njim. Saznajte Python i Electronics s Minecraft Pi Edition Saznajte Python i Electronics s Minecraft Pi Edition Jeste li oduvijek željeli naučiti šifrirati, ali niste znali gdje započeti? Saznajte kako kontrolirati Minecraft na Raspberry Pi pomoću Pythona i neke jednostavne elektronike. , to ne znači da biste ga trebali popustiti kao manje jezik.
OOP je kamen temeljac modernog razvoja softvera, a Python je više nego sposoban pratiti korak. To može učiniti jednu ili dvije stvari drugačije od ostalih glavnih jezika, ali nemojte to dopustiti.
Ovaj će tutorial pretpostaviti osnovno znanje Pythona, ali pokrivat ćemo sve složene stvari na putu. Ako ste novi u Pythonu, zašto ne biste pogledali ove trikove za učenje novog programskog jezika 7 Korisni trikovi za savladavanje novog jezika programiranja 7 Korisni trikovi za savladavanje novog jezika programiranja U redu je biti preopterećen kada učite kodirati. Vjerojatno ćete zaboraviti stvari čim ih naučite. Ovi savjeti mogu vam pomoći da bolje zadržite sve te nove informacije. ili što je s jednostavnim projektom, kao što su čitanje i pisanje na Google tablice s Python-om. Kako čitati i pisati u Google tablice s Python-om. Kako čitati i pisati u Google Sheets s Python-om, Python se može činiti čudnim i neobičnim, no lako je to naučiti i koristiti. U ovom ću vam članku pokazati kako čitati i pisati na Google tablice koristeći Python. ?
Preduvjeti i postavljanje Pythona
Prije nego što započnete, možda biste željeli postaviti postavke Python razvojnog okruženja. Koristit ćemo Python 3.6.5, a iako možete koristiti starije verzije, slijedeće ćete imati manje problema ako koristite prilično novu verziju.
Želite kreirati virtualno okruženje Saznajte kako koristiti virtualno okruženje Python Saznajte kako koristiti virtualno okruženje Python-a Bez obzira jeste li iskusni Python-ov programer ili tek započinjete, naučite kako postaviti virtualno okruženje od presudne je važnosti za bilo koji Python projekt. ako ga već nemate, i instalirajte PIP za Python Kako instalirati Python PIP na Windows, Mac i Linux Kako instalirati Python PIP na Windows, Mac i Linux Mnogi programeri Pythona oslanjaju se na alat pod nazivom PIP za Python za učiniti sve lakšim i bržim. Evo kako instalirati Python PIP. ako to nije instalirano (dolazi s većinom modernih instalacija Pythona). Jednom kada postavite te postavke, dobro ćete krenuti. Započnimo!
Osnove Pythona: Klase
klasa je temeljni građevni blok OOP-a. Razred je poput plana ili nacrta. Oni definiraju karakteristike objekta Što je objektno orijentirano programiranje? Osnove pojašnjene u laičkim uvjetima Što je objektno orijentirano programiranje? Osnove pojašnjene u laičkim uvjetima Većina modernih programskih jezika podržava paradigmu "objektno orijentirano programiranje" (OOP). Ali što je to točno OOP i zašto je toliko koristan? , Na primjer, ako imate automobilsku klasu, može reći da postoje četiri kotača, barem jedno sjedalo i motor.
Evo kako napraviti klasu u Pythonu:
klasa Vozilo: "" "Ova klasa definira vozila." "" prolazak
Jednostavno zar ne? Ovdje se događa nekoliko stvari. Primjetite komentar na vrhu klase. Ovo je poseban komentar nazvan a docstring. Trebalo bi malo objasniti vaš kôd. Upotrebom trostrukih citata (“””), kažete Pythonu da je ovo docstring.
proći ključna riječ govori Pythonu da ne radi ništa. To je posebna riječ i možete je misliti kao todo. To će učiniti da se vaš kod pokrene, ali u stvari ništa ne radi.
Ako pokrenete ovaj kod, vidjet ćete da se ništa ne događa. Trebaš oprimjeruju ti klasa. To učinkovito znači graditi objekt na osnovu plana definiranog u klasi. Možete stvoriti koliko god želite kopija, od kojih svaka ima drugačija svojstva. Evo kako to postižete:
red_car = Vozilo ()
Ako ovo pokrenete opet, vidjet ćete da se ništa ne događa. Kod radi ispravno, ali niste mu rekli da učini nešto primjetno. Vozilo klasa definira nacrte za vozilo, a ovaj najnoviji redak stvara objekt vozila i daje mu ime crveni auto.
Moguće je napraviti onoliko predmeta koliko želite:
red_car = Vozilo () green_car = Vozilo () blue_car = Vozilo ()
Dodajmo još malo koda. Dodajte metodu zvanu __u tome__ prema Vozilo klasa:
klasa Vozilo: "" "Ova klasa definira vozila." "" def __init __ (self, color = "plain"): "" "Postavljanje nekih svojstava prilagođenog automobila" "" print ('Novi automobil napravljen!') self.color = boja red_car = Vozilo () green_car = Vozilo () blue_car = Vozilo ()
Na to obratite posebnu pozornost __u tome__ metoda. Mora se započeti i završiti s dvije podvlake. Ovo je posebna metoda u Pythonu. Zove se automatski kada stvorite novi objekt. Pokretanje ovog koda prikazat će riječi “Novi automobil izrađen!” tri puta.
Konačno, __u tome__ uzima prilagođeni argument nazvan boja. Znak jednake i niza odmah nakon toga kaže Pythonu da postavi boju “običan” ako nije navedeno. Možete izmijeniti svoje instance za postavljanje boje vašeg automobila prilikom izrade:
red_car = Vozilo (color = 'red') green_car = Vozilo (color = 'green') blue_car = Vozilo (color = 'blue')
Ako ispisujete boju automobila, vidjet ćete da svaka instance ima različitu boju, iako su sve tri izrađene u istoj specifikaciji (klasa). Python vam omogućuje pristup gotovo bilo kojoj varijabli ili objektu - mnogo drugih jezika vam to omogućuje:
print (red_car.color) print (green_car.color) ispis (blue_car.color)
To funkcionira jer ste odredili boja do self.color. Self je još jedna posebna ključna riječ u Pythonu i odnosi se na svaku određenu instancu klase. Kad god koristite self, možete postaviti ili pristupiti podacima jedinstvenim za tu instancu. Na primjer, crveni automobil ima crvenu boju.
Izmijenite svoje __u tome__ način pohrane zvuka automobila u varijablu:
self.noise = 'Vroooom'
Da biste ispisali šum automobila, jednostavno biste mogli pristupiti uređaju buka varijabla, kao što ste učinili s bojom, ali to nije najbolja ideja. Što ako, kad vozite automobil, želite istovremeno pokrenuti neki drugi kod, možda kod koji još niste napisali? Ili što ako želite promijeniti način vožnje automobila u budućnosti? Stvaranjem a funkcija (poznata i kao način), možete čvrsto kontrolirati kako stvari funkcioniraju. Dodajte ovo ispod svog __u tome__ metoda:
Def pogon (samo): ispis (self.noise)
Ovu metodu možete nazvati jednostavno:
red_car.drive ()
Kad god to pozovete voziti metoda, Python će ispisati zvuk. To možete proširiti tako da obavljate sve zadatke, ali ostavite kao što je to sada slučaj.
Dobro napravljeno! Do sad biste trebali čvrsto shvatiti osnove. Trebali biste biti u mogućnosti kreirati i koristiti vlastite časove, svaki sa svojim jedinstvenim sposobnostima i funkcijama.
Što je s privatnim varijablama u Pythonu?
Privatni su objekti vrlo uobičajeni u većini drugih jezika. Oni su jednostavno varijable ili funkcije kojima se ne može pristupiti izvan klase. To mogu biti kodovi koji zahtijevaju da se prije uporabe moraju ispuniti posebni uvjeti ili su jednostavno dizajnirani samo za internu upotrebu. Bez obzira na razlog, instance ne mogu pristupiti privatnim članovima ... osim ako ne kodirate Python.
Python nema privatne članove. Umjesto toga, Python se oslanja na sustav časti: “Svi odrasli pristajemo.” Python programeri razumiju da možda želite pozabaviti se osjetljivim interijerima klase i to je u redu, tako da ništa nikada ne bi trebalo biti uistinu nepristupačno.
Međutim, Python ipak ima prihvaćenu konvenciju za označavanje određenih varijabli kao “privatna” u smislu “Ova je varijabla namijenjena internoj uporabi i vjerojatno je ne morate dodirivati.” Konvencija je prefiksirati imena varijabli s podvlakom:
_some_secret_variable = 42
To djeluje kao upozorenje ostalim programerima. Python vam neće spriječiti pristup ovom pristupu, ali podcrtavanje vas upućuje da to nije stvoreno za upotrebu na ovaj način, a nastavite na vlastiti rizik.
Ponekad je Python način da se pozabave skrivenim stvarima, ali riskirate da stvari možda neće raditi ispravno.
Razumijevanje nasljeđivanja u Pythonu
Nasljeđivanje je još jedan način smanjenja umnožavanja i ponovne upotrebe koda. Razmišljajući o odnosu roditelja i djeteta, nasljeđivanje dopušta dijete dijeliti zajednički kod s roditelj. Uvedimo električni automobil koji nasljeđuje od roditelja.
Dodajte ovaj kôd ispod vašeg Vozilo klasa:
klasa ElectricCar (Vozilo): "" "Klasa električnih vozila." "" Napunjenje (samo): ispis ('Zzz') electric_car = ElectricCar () electric_car.charge () electric_car.noise = 'Whoosh' electric_car.drive ()
Nakon što Električni auto je definirano, Vozilo klasa je navedena unutar dva zagrada. Ovo govori Pythonu da Električni auto je dijete od Vozilo. To mu omogućava pristup svim podacima i metodama u Vozilo.
Električni automobil ima svoje posebne metode. Može se puniti (nešto što druga vozila ne mogu). Promjenom zvuka automobila, a potom vožnjom, možete vidjeti da električni automobil pravi drugačiji zvuk, a niste morali definirati način vožnje. To je zato što je pogon naslijeđen od roditelja.
Proširite svoje znanje Pythona još više
Ovi su primjeri pokazali koliko jednostavan OOP može biti u Pythonu. Samo smo pokrili osnovne temelje, ali kad ih jednom spustite, ostalo je jednostavno.
Ako želite nastaviti učiti Python ili možda primijeniti ove OOP vještine u praksi, zašto ne biste pogledali nizove i popise u Pythonu ili što o tome da Python i JavaScript komuniciraju?
Ako je sve to ostalo što želite više, onda ne zaboravite provjeriti ove najbolje web stranice kako biste naučili Python 5 najboljih web stranica za učenje programiranja Pythona 5 najboljih web stranica za učenje programiranja Pythona Želite naučiti programiranje Pythona? Evo najboljih načina za učenje Pythona na mreži, od kojih su mnogi potpuno besplatni. .