Průvodce pro začátečníky k objektově orientovanému programování v Pythonu

  • Owen Little
  • 0
  • 4274
  • 510
reklama

Python se používá ve všem, od Raspberry Pi až po strojové učení. Pokud však chcete pracovat na jakémkoli velkém projektu, musíte vědět, jak Python pracuje s objektově orientovaným programováním (OOP). Tento článek se bude věnovat základům, které potřebujete vědět.

Pokud nejste ve skutečnosti v programování, proč se podívat na tyto nejlepší náčrtky Monty Python namísto 8 z létajících cirkusových náčrtů Monty Python [Stuff to Watch] 8 nejlepších létajících cirkusových skic Monty Python [Stuff to Watch] Velmi nemnoho jiných komediálních souborů rozbilo tolik nového základu jako Monty Python, když byly poprvé vysílány na BBC v roce 1969. Nejen, že byl humor svěží, dobře dodaný a velmi, velmi ...? Nakonec jazyk inspirovali!

Počkejte, Python není skutečný jazyk?

Pojďme si ujasnit jednu věc: Python JE skutečný programovací jazyk, je oblíbený a rychle roste. Jen proto, že to vypadá jako pseudokód a můžete kódovat Minecraft na Pi s ním Naučte se Python a elektroniku s Minecraft Pi Edition Naučte se Python a elektroniku s Minecraft Pi Edition Už jste se vždy chtěli naučit kódovat, ale nevěděli jste, kde začít? Naučte se ovládat Minecraft na Raspberry Pi pomocí Pythonu a nějaké jednoduché elektroniky. , to neznamená, že byste měli slevu jako menší jazyk.

OOP je základním kamenem vývoje moderního softwaru a Python je více než schopen udržet krok. Může to dělat jednu nebo dvě věci odlišně než jiné běžné jazyky, ale nenechte se tím odradit.

Tento tutoriál bude předpokládat základní znalosti Pythonu, ale my pokryjeme všechny složité věci podél cesty. Pokud jste v Pythonu nováčkem, proč se nepodívat na tyto triky, abyste se naučili nový programovací jazyk 7 Užitečné triky pro zvládnutí nového programovacího jazyka 7 Užitečné triky pro zvládnutí nového programovacího jazyka Je v pořádku být ohromen, když se učíte kódovat. Pravděpodobně zapomenete na věci tak rychle, jak se je naučíte. Tyto tipy vám mohou pomoci lépe si uchovat všechny nové informace. , nebo co jednoduchý projekt, jako je čtení a zápis do Tabulek Google s Pythonem Jak číst a psát do Tabulek Google s Pythonem Jak číst a psát do Tabulek Google s Pythonem Python se může zdát podivný a neobvyklý, nicméně je snadné se ho naučit a použití. V tomto článku vám ukážu, jak číst a psát do Tabulek Google pomocí Pythonu. ?

Předpoklady a nastavení Pythonu

Než začnete, možná budete chtít získat nastavení vývojového prostředí Pythonu. Budeme používat Python 3.6.5, a zatímco můžete používat starší verze, budete mít menší problémy s pokračováním, pokud používáte poměrně novou verzi.

Budete chtít vytvořit virtuální prostředí Naučte se, jak používat virtuální prostředí Python Naučte se, jak používat virtuální prostředí Python Ať už jste zkušený vývojář Pythonu, nebo právě začínáte, naučit se, jak nastavit virtuální prostředí, je pro jakýkoli projekt Pythonu. pokud ještě žádný nemáte, a nainstalujte PIP pro Python Jak nainstalovat Python PIP na Windows, Mac a Linux Jak nainstalovat Python PIP na Windows, Mac a Linux Mnoho vývojářů Python spoléhá na nástroj s názvem PIP pro Python usnadnit a zrychlit vše. Zde je návod, jak nainstalovat Python PIP. pokud to není nainstalováno (přichází s většinou moderních instalací Pythonu). Jakmile se dostanete na toto nastavení, bude dobré jít. Začněme!

Základy Pythonu: Třídy

A třída je základní stavební blok OOP. Třída je jako plán nebo plán. Definují vlastnosti objektu Co je objektově orientované programování? Základy vysvětlené laikovými pojmy Co je objektově orientované programování? Základy vysvětlené v Laymanových termínech Nejmodernější programovací jazyky podporují paradigma „objektově orientovaného programování“ (OOP). Ale co přesně je OOP a proč je tak užitečný? . Máte-li například třídu automobilů, může to znamenat, že existují čtyři kola, alespoň jedno sedadlo a motor.

Zde je návod, jak vytvořit třídu v Pythonu:

třída Vozidlo: "" "Tato třída definuje vozidla." "" projít 

Jednoduché, že? Děje se tu pár věcí. Všimněte si komentáře v horní části třídy. Toto je speciální komentář zvaný a docstring. Mělo by to trochu vysvětlit váš kód. Pomocí trojitých nabídek (“””), říkáte Pythonovi, že se jedná o docstring.

složit klíčové slovo říká Pythonovi, aby neudělal nic. Je to zvláštní slovo a můžete na to myslet jako na todo. Váš kód se spustí, ale ve skutečnosti nic nedělá.

Pokud spustíte tento kód, uvidíte, že se nic neděje. Musíš instance třídy. To efektivně znamená jít a postavit objekt na základě plánu definovaného ve třídě. Můžete vytvořit libovolný počet kopií, každý s různými vlastnostmi. Postupujte takto:

red_car = Vozidlo ()

Pokud to spustíte znovu, uvidíte, že se nic neděje. Kód funguje správně, ale neřekli jste mu, aby udělal cokoli znatelného. Vozidlo třída definuje plány pro vozidlo a tato poslední řádka vytvoří objekt vozidla a dá mu jméno červené auto.

Je možné vyrobit co nejvíce objektů:

red_car = Vehicle () green_car = Vehicle () blue_car = Vehicle ()

Pojďme přidat další kód. Přidejte metodu s názvem __init__ do Vozidlo třída:

class Vehicle: "" "Tato třída definuje vozidla." "" def __init __ (self, color = "plain"): "" "Nastavit některé vlastní vlastnosti auta" "" print ('New car made!') self.color = color red_car = Vehicle () green_car = Vehicle () blue_car = Vehicle ()

Věnujte tomu zvláštní pozornost __init__ metoda. Musí začínat a končit dvěma podtržítky. Toto je speciální metoda v Pythonu. Automaticky se nazývá, když vytvoříte nový objekt. Spuštění tohoto kódu zobrazí slova “Vyrobeno nové auto!” třikrát.

Konečně, __init__ vezme vlastní argument s názvem barva. Znaménko rovná se a řetězec bezprostředně následující řeknou Pythonovi, aby nastavil barvu na “prostý” pokud není uvedeno. Při úpravách svých instancí můžete upravit barvu auta:

red_car = Vozidlo (color = 'red') green_car = Vehicle (color = 'green') blue_car = Vehicle (color = 'blue')

Pokud vytisknete barvu vozu, uvidíte, že každá instance má jinou barvu, i když všechny tři byly vyrobeny podle stejné specifikace (třídy). Python vám umožňuje přístup k téměř jakékoli proměnné nebo objektu - to vám neumožňuje mnoho jiných jazyků:

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

To funguje, protože jste přiřadili barva na self.color. Self je další speciální klíčové slovo v Pythonu a odkazuje na každou konkrétní instanci třídy. Kdykoli používáte sebe, můžete nastavit nebo získat přístup k datům jedinečným pro tuto instanci. Například červené auto má červenou barvu.

Upravte svůj __init__ způsob ukládání hluku automobilu do proměnné:

self.noise = 'Vroooom'

Chcete-li vytisknout hluk automobilu, stačí se dostat do hluk variabilní, jako jste to udělali s barvou, ale to není nejlepší nápad. Co když, když řídíte auto, chcete, aby se současně spustil nějaký jiný kód, možná kód, který jste ještě nenapsali? Nebo co když chcete změnit způsob, jakým bude auto řídit v budoucnu? Vytvořením a funkce (také známý jako metoda), můžete pevně kontrolovat, jak věci fungují. Přidejte toto pod svůj __init__ metoda:

def drive (self): print (self.noise)

Tuto metodu můžete nazvat jednoduše:

red_car.drive ()

Kdykoli zavoláte řídit metoda, Python zvuk vytiskne. Můžete to rozšířit, abyste mohli provádět všechny úkoly, ale nechte je tak, jak je pro tuto chvíli.

Výborně! Nyní byste měli mít pevné uchopení základů. Měli byste být schopni vytvářet a používat své vlastní třídy, z nichž každá má své vlastní jedinečné schopnosti a funkce.

A co soukromé proměnné v Pythonu?

Soukromé objekty jsou ve většině ostatních jazyků velmi běžné. Jsou to prostě proměnné nebo funkce, ke kterým nelze přistupovat mimo třídu. Mohou to být kódy vyžadující zvláštní podmínky, které musí být splněny před použitím, nebo jednoduše navrženy pouze pro interní použití. Ať už je důvod jakýkoli, instance nemohou přistupovat k soukromým členům ... pokud kódujete v Pythonu.

Python nemá soukromé členy. Místo toho se Python spoléhá na systém cti: “Všichni souhlasíme s dospělými.” Programátoři Pythonu chápou, že možná budete chtít pohrávat s citlivými vnitřky třídy, a to je v pořádku, takže nic by nikdy nemělo být opravdu nepřístupné.

Python však má schválenou konvenci pro označování určitých proměnných jako “soukromé” ve smyslu “Tato proměnná je určena pro interní použití a pravděpodobně se jí nemusíte dotýkat.” Konvence je předpona názvů proměnných podtržítkem:

_some_secret_variable = 42

To slouží jako varování ostatním programátorům. Python vám to nezastaví, ale podtržení vás upozorňuje, že to nebylo navrženo k použití tímto způsobem, a měli byste pokračovat na své vlastní riziko..

Někdy je to způsob, jak se Python pohrávat se skrytými věcmi, ale riskujete, že věci nebudou fungovat správně.

Porozumění dědičnosti v Pythonu

Dědičnost je další způsob, jak snížit duplicitu a znovu použít kód. Pokud jde o vztah rodič a dítě, dědictví umožňuje dítě sdílet společný kód s rodič. Pojďme implementovat elektrické auto, které zdědí od rodiče.

Přidejte tento kód pod svůj Vozidlo třída:

třída ElectricCar (Vozidlo): "" "Třída elektrického vozidla." "" Def charge (self): print ('Zzz') electric_car = ElectricCar () electric_car.charge () electric_car.noise = 'Whoosh' electric_car.drive ()

Po Elektrické auto je definován, Vozidlo třída je uvedena uvnitř dvou závorek. To říká Pythonovi Elektrické auto je dítě Vozidlo. To mu umožňuje přístup ke všem údajům a metodám uvedeným v Vozidlo.

Elektrické auto má své vlastní speciální metody. Může se nabíjet (něco, co jiná vozidla nemohou dělat). Změnou hluku automobilu a následným řízením můžete vidět, že elektrické auto vydává jiný zvuk a nemusíte definovat způsob jízdy. Důvodem je, že jednotka je zděděna od nadřazené jednotky.

Rozšiřte své znalosti Pythonu ještě dále

Tyto příklady ukázaly, jak snadné může být OOP v Pythonu. Pouze jsme se zabývali samotnými základy, ale jakmile je máte dole, zbytek je snadný.

Pokud se chcete stále učit Python, nebo možná tyto OOP dovednosti uvést do praxe, proč se podívat na pole a seznamy v Pythonu, nebo co přimět Python a JavaScript ke komunikaci?

Pokud vám toto všechno nechalo víc, pak nezapomeňte vyzkoušet tyto nejlepší webové stránky, kde se naučíte Python 5 nejlepších webů, kde se naučíte programování Pythonu 5 nejlepších webů, kde se naučíte programování Pythonu Chcete se naučit programování Pythonu? Zde jsou nejlepší způsoby, jak se naučit Python online, z nichž mnohé jsou zcela zdarma. .




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

O moderní technologii, jednoduché a cenově dostupné.
Váš průvodce ve světě moderních technologií. Naučte se, jak používat technologie a pomůcky, které nás každý den obklopují, a naučte se, jak objevovat na internetu zajímavé věci.