Uvod v Python Constructors

Python je interpretiran in objektno usmerjen programski jezik na visoki ravni, ki ima spodaj navedene programske prednosti. V tej temi bomo spoznali Constructor v Pythonu.

1) prijaznost do programerja in enostavnost razumevanja

2) Široko razširjene podporne knjižnice

3) Večja prilagodljivost

4) prenosnost platforme (zmožnost razširjanja na vseh platformah)

5) Razpoložljivost odprtega vira

6) itd.

Ključna logika konstruktorjev je zagotoviti inicializacijo članov primerkov. V pytonu ti konstruktorji igrajo enako značilno vlogo. V pythonu se lahko prek teh konstruktorjev inicializirajo vsi člani primerka.

Tipi konstruktorjev
Privzeti konstruktorParametriziran konstruktor
To je privzeti konstruktor, kjer ni sprejetih nobenih argumentov.

Privzeti argument je prisoten pri privzetih konstruktorjih, ki se imenujejo self. Ta argument se nanaša na predmet, ki je bil ustvarjen za ta razred.

Primer:

vzorec razreda:

# privzeti konstruktor

def __init __ (samo):

# inicializiranje primerka spremenljivke

self.number_variable = 1001

# metoda

def print_method (samo):

natis („številčna spremenljivka:“, samo. številka_varijabilna)

obj = vzorec ()

obj.print_method ()

Izhod:

številčna spremenljivka: 1001

Parametrizirani konstruktorji v njih sprejemajo argumente. Tako kot privzeti konstruktorji tudi tukaj prvi argument ustvarjajo sklice na primerek tega razreda in preostale argumente programer potrebuje in določi, da se sklicuje na spremenljivke primerka.

Primer:

vzorec razreda:

# parametriziran konstruktor

def __init __ (samo, id, ime, starost, spol, doj, dob):

self.id_value = id

self.name_value = ime

self.age_value = starost

self.gender_value = spol

self.doj_value = doj

self.dob_value = dob

def print_output (samo):

natis (»Vrednost id:«, samo.id_value)

natisni ("ime-vrednost:", samo ime, vrednost)

natisni (»age_value:«, self.age_value)

natisni (»gender_value:«, self.gender_value)

natisni ("doj_value:", self.doj_value)

natisni ("dob_value:", self.dob_value)

obj1 = vzorec (101, 'Terry', 27, 'moški', 10072015, 10071993)

obj1.print_output ()

Izhod:

Id vrednost: 101

name_value: Terry

starostna vrednost: 27

vrednost spola: moški

doj_value: 10072015

dob_value: 10071993

Kako deluje konstruktor?

Ko je predmet ustvarjen za razred python, bo funkcija konstruktorja prvi kodni segment, ki se bo sprožil za izvedbo, zaradi česar se vse inicializacije izvedejo kot prvi primerek dela programa. dva ključna elementa konstruktorjev v tem procesu sta spodaj

  • __Init __ () funkcija
  • Samoplačniška referenca

1. Funkcija Init ()

Ta funkcija se pokliče, ko je ustvarjen primerek predmeta za ustrezni razred. ta funkcija konstruktorja je potrjena s ključno besedo def, ki je strašno podobna vsem ostalim deklaracijam funkcij. še ena opazna stvar v teh deklaracijah init funkcije v funkciji bo pred dvojnimi podčrtaji in jih pritrdi.

Primer

def __init__(self, salary_arg)

2. Samoplačniška referenca

Jaz omenja objekt sam. Self se lahko nanaša na funkcije in spremenljivke, ki ustrezajo razredu, v katerem je vključen. to mora biti najpomembnejši parameter v deklaraciji konstruktorja. Pomeni, da se pričakuje, da bo eksponent deloval z atributi tega predmeta.

Metoda show uporablja tudi self kot svojo ključno besedo

Primer

def __init__(self, Employee_name, Employee_id, Employee_age):
self.Employee_name = name;
self.Employee_id = id;
self.Employee_age = age

Primer programa

Program z uporabo konstruktorjev

#!/usr/bin/evn python
# Define a class as 'Individual' #
class Individual:
# Constructor#1 #
def __init__(self):
self.Student_Name = input( " Enter Name of the student : " )
self.Student_age = input( " Enter age of the student : " )
self.Student_gender = input( " Enter gender of the student : " )

# Method
def display(self):
print( " \n \n Enter Name of the student : ", self.Student_Name )
print( " Enter age of the student : ", self.Student_age )
print( " Enter gender of the student : ", self.Student_gender )

# Define a class as 'Evaluated_Marks' #
class Evaluated_Marks:
# Constructor#2 #
def __init__(self):
self.stuClass = input( " Class of the student : " )
print( " Evaluated Marks per subject : " )
self.literature = int(input( " Mark in Literature subject : " ))
self.math = int(input( " Mark in Math subject : " ))
self.biology = int(input( " Mark in Biology subject : " ))
self.physics = int(input( " Mark in Physics subject : " ))

# Method
def display(self):
print( " Study in : ", self.stuClass)
print( " Total Evaluated_Marks : ", self.literature + self.math + self.biology + self.physics)

class student(Individual, Evaluated_Marks):
def __init__(self):
# Call ' Individual ' super class constructor
Individual.__init__(self)
# Call ' Evaluated_Marks ' super class constructor
Evaluated_Marks.__init__(self)

def result(self):
# Call method of class 'Individual'
Individual.display(self)
# Call method of class 'Evaluated_Marks'
Evaluated_Marks.display(self)

# Objects of class 'student' #
Student1 = student()
Student2 = student()
print(" ")
print( " Note : The instances get initialized with the given values Successfully " )

Izhod:
runfile('C:/Users/Dell/.spyder-py3/temp.py', wdir='C:/Users/Dell/.spyder-py3')
Enter Name of the student: Arun
Enter the age of the student: 15
Enter the gender of the student: male
Class of the student: 11
Evaluated Marks per subject :
Mark in Literature subject: 45
Mark in Math subject: 34
Mark in Biology subject: 23
Mark in Physics subject: 45

Enter Name of the student: Rajan
Enter the age of the student: 16
Enter the gender of the student: male
Class of the student: 11
Evaluated Marks per subject :
Mark in Literature subject: 23
Mark in Math subject: 34
Mark in Biology subject: 23
Mark in Physics subject: 56

Opomba: Primeri se uspešno inicializirajo z danimi vrednostmi

Prednosti konstruktorjev

  • Glavna prednost konstruktorjev je, da so v veliki meri v pomoč pri inicializaciji
  • Spremenljivke primerkov v končnem stanju lahko nastavite ali inicializirate samo z uporabo konstruktorjev.
  • Inicializacije privzete vrednosti lahko s konstruktorji izpustimo
  • ko je predmet ustvarjen za razred python, bo funkcija konstruktorja prvi kodni segment, ki se bo začel izvajati, zaradi česar se vse inicializacije izvedejo kot prvi primerek dela programa.
  • Konstruktorji se lahko začnejo s parametri in brez njih

Zaključek - Konstruktor v Pythonu

Konstruktorji igrajo pomembno vlogo v vsakem programskem jeziku na visoki ravni. podobno kot v primeru pytona, je odgovornost gradbenikov predvsem na mestu, ko je mišljen koncept objektno usmerjenega programiranja. konstruktorji pomagajo doseči optimizirane inicializacije spremenljivk primerka.

Priporočeni članki

To je vodnik za Constructor v Pythonu. Tukaj razpravljamo o tipih konstruktorjev in kako deluje konstruktor v Pythonu. Če želite izvedeti več, si oglejte tudi naslednji članek -

  1. Prevajalci Python
  2. Postavitev v Javi
  3. Okviri Python
  4. Ukazi C ++