Python Constructors: Alt hvad du behøver at vide



Denne artikel vil introducere dig til et interessant emne, der er simpelt, men alligevel kerne til programmering. Jeg henviser til Python-konstruktører.

Denne artikel vil introducere dig til et interessant emne, der er simpelt, men alligevel kerne til programmering, jeg henviser til konstruktører. Følgende punkter vil blive dækket i denne artikel,

Så lad os komme i gang dengang,





Python-konstruktører

Hvis du har programmeret et stykke tid nu, er du sandsynligvis stødt på navnet Python en for mange gange. Python som programmeringssprog følger objektorientering, hvilket betyder, at hver instans, der oprettes på platformen, er defineret som et objekt. Selvom de fleste af komponenterne i Python har masser af informationer online, er et emne, der bliver ved med at blive undersøgt igen og igen, at det er en konstruktør i Python. Derfor vil vi i denne artikel diskutere alt om konstruktører i Python, hvordan du kan bruge dem og de fordele, de medfører til bordet. Lad os begynde!

Fortsætter med denne artikel om Python Constructors,



Hvad er en konstruktør i Python?

En konstruktør kan simpelthen defineres som en speciel type metode eller funktion, som kan bruges til at initialisere forekomster af forskellige medlemmer i en klasse.

I Python er der to forskellige typer konstruktører.

  • Ikke-parametreret konstruktør: Konstruktørerne i Python, der ikke har nogen parametre til stede, er kendt som en ikke-parametreret konstruktør.
  • Parameteriseret konstruktør: En konstruktør, der har en parametre foruddefineret, er kendt som en parametreret konstruktør.

En konstruktør defineres i det øjeblik, vi opretter et objekt inde i en klasse. Tilstedeværelsen af ​​en konstruktør verificerer også, at der er nok ressourcer til stede, så en opstartsopgave let kan udføres via et objekt i en klasse.



Fortsætter med denne artikel om Python Constructors,

Oprettelse af en konstruktør i Python

Nu hvor du har gjort dig bekendt med definitionen og typerne af konstruktører i Python, lad os undersøge, hvordan vi kan oprette en konstruktør i Python.

I Python skal du bruge __init__-funktionen og / eller metoden, hvis du har brug for at oprette en konstruktion. Du er nødt til at påkalde denne metode, i det øjeblik en klasse instantieres. Når __init__-funktionen er defineret og kaldet, kan vi videregive et hvilket som helst antal argumenter på tidspunktet for oprettelse af klasseobjekter afhængigt af dine behov. Den mest almindelige brug af en konstruktør i Python er at initialisere attributterne for en klasse.

Bemærk:

sammenkædet listekode i c

Hver klasse, du opretter i Python, skal have en konstruktør til stede, for at den kan fungere, selvom den er standardkonstruktøren.

For at forstå dette koncept bedre skal du kigge på eksemplet nedenfor.

klasse Medarbejder: def __init __ (self, name, id): self.id = id self.name = name def display (self): print ('ID:% d nName:% s'% (self.id, self.name )) emp1 = Medarbejder ('John', 101) emp2 = Medarbejder ('David', 102) #accessing display () metode til at udskrive medarbejder 1 information emp1.display () #accessing display () metode til at udskrive medarbejder 2 information emp2 .Skærm()

Når du kører ovenstående program, vil output se sådan ud.

ID: 101

Navn: John

ID: 102

Navn: David

Fortsætter med denne artikel om Python Constructors,

Forskel mellem parametreret og ikke-parametreret konstruktør

Som nævnt i definitionerne ovenfor er en parametreret konstruktor en, der har en foruddefineret værdi, og en ikke-parametreret konstruktør er en, der ikke har nogen værdi tildelt den. Mens programmering varierer brugssagerne afhængigt af sammenhængen, og for at forstå dette bedre, skal du kigge på eksemplerne nedenfor.

klasse Elev: #Constructor - ikke-parametreret def __init __ (selv): print ('Dette er ikke parametreret konstruktør') def show (selv, navn): print ('Hej', navn) student = Student () student.show (' John')

Ovenstående er et eksempel på en ikke-parametreret konstruktør, og dens output vil være følgende.

Dette er ikke parametriseret konstruktør

Hej John

klasse Elev: #Constructor - parametreret def __init __ (selv, navn): print ('Dette er parametriseret konstruktør') self.name = name def show (self): print ('Hello', self.name) student = Student (' John ') student.show ()

Ovenstående er et eksempel på en parametreret konstruktør, og dens output vil være følgende.

Dette er parametriseret konstruktør

Hej John

twitter sentiment analyse ved hjælp af gnist

Fortsætter med denne artikel om Python Constructors,

I indbyggede klassefunktioner i Python

Nu hvor det grundlæggende i en konstruktør i Python er klart, lad os udforske de forskellige indbyggede klasser, der er til stede i Python.

overordnet vs overbelastning i java
  1. getattr (obj, navn, standard): Denne indbyggede funktion i Python bruges til at få adgang til attributterne for en klasse.
  2. delattr (obj, navn): Hvis du har brug for at slette en bestemt attribut i en klasse, skal du bruge denne indbyggede funktion.
  3. setattr (obj, navn, værdi): Hvis du i en bestemt situation beslutter at indstille en bestemt værdi til en bestemt attribut, så brug denne funktion, der kommer indbygget i Python.
  4. hasattr (obj, navn): Sidst, men ikke mindst, hvis du har brug for at se, om et bestemt objekt indeholder en attribut, så brug denne funktion. Efter udførelse vil dette returnere sandt, hvis en attribut er til stede i en funktion.

For at forstå begrebet indbyggede klassefunktioner i Python skal du kigge på koden nedenfor.

klasse Student: def __init __ (selv, navn, id, alder): self.name = navn self.id = id self.age = age # skaber objektet for klassen Student s = Student ('John', 101,22) # udskriver attributnavnet for objektets udskrivning (getattr (s, 'navn')) # nulstil værdien for attributalderen til 23 setattr (s, 'age', 23) # udskriver den ændrede værdi for aldersudskrivning (getattr ( s, 'alder')) # udskriver sandt, hvis eleven indeholder attributten med navn id udskrivning (hasattr (s, 'id')) # sletter attributten alder delattr (s, 'alder') # dette vil give en fejl siden attributalderen er blevet slettet print (s.age)

Output for ovenstående vil være.

John

2. 3

Sand

AttributeError: 'Student' -objektet har ingen attribut 'age'

Fortsætter med denne artikel om Python Constructors,

Indbyggede klasseattributter

Sammen med de indbyggede klassefunktioner leveres Python med indbyggede klasseattributter, som til tider er nyttige. Nogle af de mest betydningsfulde indbyggede klasseattributter er som angivet nedenfor.

  1. __dict__: Ved at bruge dette kan du se ordbogen, der indeholder oplysninger om klassens navneområde.
  2. __name__: Brug denne attribut, hvis du har brug for at se navnet på den aktuelle klasse.
  3. __doc__: Denne attribut indeholder en streng, der indeholder dokumentationen til den aktuelle klasse.
  4. __module__: Hvis du har brug for adgang til det modul, hvor klassen er defineret, skal du bruge denne indbyggede attribut.
  5. __bases__: Hvis du har brug for at se tuplen, der inkluderer alle basisklasser, skal du bruge denne funktion.

Et eksempel til at afklare alle de indbyggede klasseattributter er som angivet nedenfor.

klasse Elev: def __init __ (selv, navn, id, alder): self.name = navn 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__)

Dette bringer os til slutningen af ​​denne artikel om Python Constructors.

For at få dybdegående viden om Python sammen med dens forskellige applikationer kan du til live online træning med support døgnet rundt og adgang til hele livet.

Har du et spørgsmål til os? Nævn dem i kommentarfeltet i “Python Tutorial”, så vender vi tilbage til dig.