Konštruktéri Pythonu: Všetko, čo potrebujete vedieť



Tento článok vás zavedie do zaujímavej témy, ktorá je jednoduchá, ale základná pre programovanie, mám na mysli konštruktory Pythonu.

Tento článok vám predstaví zaujímavú tému, ktorá je jednoduchá, ale pre programovanie základná, mám na mysli konštruktéri. V tomto článku sa budeme zaoberať nasledujúcimi ukazovateľmi,

Poďme teda do toho,





Konštruktory Pythonu

Ak programujete už niekedy, pravdepodobne ste sa s menom Python one príliš často stretli. Python ako programovací jazyk sleduje objektovú orientáciu, čo znamená, že každá inštancia vytvorená na platforme je definovaná ako objekt. Aj keď väčšina komponentov v Pythone má veľa informácií online, jednou z tém, ktoré sa stále znova a znova skúmajú, je téma konštruktora v Pythone. V tomto článku si preto povieme všetko o konštruktoroch v Pythone, o tom, ako ich môžete využiť, a o výhodách, ktoré pre tabuľku prinášajú. Poďme začať!

Pokračovaním tohto článku o konštruktoroch Pythonu,



Čo je to konštruktor v Pythone?

Konštruktor možno jednoducho definovať ako špeciálny typ metódy alebo funkcie, ktorý možno použiť na inicializáciu inštancií rôznych členov v triede.

V Pythone existujú dva rôzne typy konštruktorov.

  • Neparametrický konštruktor: Konštruktory v Pythone, ktoré neobsahujú žiadne parametre, sú známe ako neparametrizované konštruktory.
  • Parametrizovaný konštruktor: Konštruktor, ktorý má vopred definované parametre, sa nazýva parametrizovaný konštruktor.

Konštruktor je definovaný v okamihu, keď vytvoríme objekt vo vnútri triedy. Prítomnosť konštruktora tiež overuje, či je k dispozícii dostatok prostriedkov, aby bolo možné úlohu spustenia ľahko vykonať prostredníctvom objektu triedy.



Pokračovaním tohto článku o konštruktoroch Pythonu,

Vytvorenie konštruktora v Pythone

Teraz, keď ste sa oboznámili s definíciou a typmi konštruktorov v Pythone, poďme preskúmať, ako môžeme vytvoriť konštruktor v Pythone.

Ak potrebujete v Pythone vytvoriť konštrukt, musíte využiť funkciu alebo metódu __init__. Túto metódu musíte použiť v okamihu, keď je trieda vytvorená. Po definovaní a vyvolaní funkcie __init__ môžeme v čase vytvárania objektov triedy odovzdať ľubovoľný počet argumentov v závislosti od vašich potrieb. Najbežnejším používaním konštruktora v Pythone je inicializácia atribútov triedy.

Poznámka:

ako funguje casting v jave

Každá trieda, ktorú vytvoríte v Pythone, musí mať prítomný konštruktor, aby mohla fungovať, aj keď je predvoleným konštruktorom.

Ak chcete tomuto konceptu lepšie porozumieť, pozrite si príklad uvedený nižšie.

trieda Zamestnanec: def __init __ (self, name, id): self.id = id self.name = name def display (self): print ('ID:% d nName:% s'% (self.id, self.name )) emp1 = Zamestnanec ('John', 101) emp2 = Zamestnanec ('David', 102) #accessing display () metóda na vytlačenie informácií o zamestnancovi 1 emp1.display () #accessing display () metóda na vytlačenie informácií o zamestnancovi 2 emp2 .display ()

Keď spustíte vyššie uvedený program, výstup bude vyzerať asi takto.

ID: 101

Meno: John

ID: 102

Meno: David

čo sú funkcie v sql

Pokračovaním tohto článku o konštruktoroch Pythonu,

Rozdiel medzi parametrizovaným a neparametrizovaným konštruktorom

Ako je uvedené v definíciách vyššie, parametrizovaným konštruktorom je taký, ktorý má preddefinovanú hodnotu a neparametrický konštruktor je taký, ktorý mu nemá priradenú žiadnu hodnotu. Zatiaľ čo sa programovanie prípadov použitia líši v závislosti od kontextu, pozrite si nasledujúce príklady, aby ste tomu lepšie porozumeli.

trieda Študent: #Constructor - neparametrizovaný def __init __ (self): print ('This is non parametrized constructor') def show (self, name): print ('Hello', name) student = Student () student.show (' Ján ')

Vyššie je uvedený príklad neparametrizovaného konštruktora a jeho výstup bude nasledujúci.

Toto nie je parametrizovaný konštruktor

Ahoj John

trieda Študent: #Constructor - parametrizovaný def __init __ (self, name): print ('This is parametrized constructor') self.name = name def show (self): print ('Hello', self.name) student = Student (' John ') student.show ()

Vyššie je uvedený príklad parametrizovaného konštruktora a jeho výstup bude nasledujúci.

Toto je parametrizovaný konštruktor

Ahoj John

Pokračovaním tohto článku o konštruktoroch Pythonu,

In Built Class Functions in Python

Teraz, keď sú základné základy konštruktora v Pythone jasné, poďme preskúmať rôzne vstavané triedy, ktoré sú v Pythone prítomné.

rozdiel medzi implementuje a rozširuje java
  1. getattr (obj, name, default): Táto zabudovaná funkcia v Pythone sa používa na získanie prístupu k atribútom triedy.
  2. delattr (obj, name): Ak potrebujete vymazať konkrétny atribút v triede, využite túto vstavanú funkciu.
  3. setattr (obj, meno, hodnota): V určitej situácii, ak sa rozhodnete nastaviť konkrétnu hodnotu na konkrétny atribút, využite túto funkciu, ktorá je zabudovaná v Pythone.
  4. hasattr (obj, name): V neposlednom rade, ak potrebujete zistiť, či konkrétny objekt obsahuje atribút, využite túto funkciu. Po vykonaní tento vráti hodnotu true, ak je vo funkcii prítomný atribút.

Aby ste pochopili koncept vstavaných funkcií tried v Pythone, pozrite sa na kód uvedený nižšie.

class Student: def __init __ (self, name, id, age): self.name = name self.id = id self.age = age #create the object of the class Student s = Student ('John', 101,22) #tlačí názov atribútu tlače objektu (getattr (s, 'name')) # resetuje hodnotu atribútu age na 23 setattr (s, 'age', 23) # vypíše upravenú hodnotu age printu (getattr ( s, 'age')) # vypíše true, ak študent obsahuje atribút s menom id print (hasattr (s, 'id')) # vymaže atribút age delattr (s, 'age') # toto spôsobí chybu, pretože atribút age has been deleted print (s.age)

Výstup pre vyššie uvedené bude.

Ján

2. 3

Pravdaže

AttributeError: Objekt „študent“ nemá žiadny atribút „vek“

Pokračovaním tohto článku o konštruktoroch Pythonu,

Zabudované atribúty triedy

Spolu s vstavanými funkciami triedy Python prichádza s vstavanými atribútmi triedy, ktoré občas prídu vhod. Niektoré z najvýznamnejších atribútov integrovanej triedy sú uvedené nižšie.

  1. __dict__: Pomocou tohto nástroja môžete zobraziť slovník, ktorý obsahuje informácie týkajúce sa menného priestoru triedy.
  2. __name__: Tento atribút použite, ak potrebujete zobraziť názov aktuálnej triedy.
  3. __doc__: Tento atribút obsahuje reťazec, ktorý obsahuje dokumentáciu pre aktuálnu triedu.
  4. __module__: Ak potrebujete získať prístup k modulu, v ktorom je definovaná trieda, využite tento vstavaný atribút.
  5. __bases__: Ak potrebujete zobraziť n-ticu, ktorá obsahuje všetky základné triedy, použite túto funkciu.

Nižšie je uvedený príklad na objasnenie všetkých zabudovaných atribútov triedy.

trieda Študent: def __init __ (self, name, id, age): self.name = meno self.id = id self.age = age def display_details (self): print ('Name:% s, ID:% d, age :% d '% (self.name, self.id)) s = Student (' John ', 101,22) print (s .__ doc__) print (s .__ dict__) print (s .__ module__)

Týmto sa dostávame na koniec tohto článku o konštruktoroch Pythonu.

Ak chcete získať podrobné informácie o Pythone a jeho rôznych aplikáciách, môžete pre živé online školenie s nepretržitou podporou a doživotným prístupom.

Máte na nás otázku? Uveďte ich v sekcii komentárov v príručke „Python Tutorial“ a my sa vám ozveme.