Úvod do Pythonových konstruktorů

Python je interpretovaný a objektově orientovaný programovací jazyk na vysoké úrovni, který má níže uvedené programovací výhody. V tomto tématu se budeme učit o Constructor v Pythonu.

1) přívětivost programátora a snadné porozumění

2) Rozšířené podpůrné knihovny

3) Větší flexibilita

4) přenositelnost platforem (Schopnost škálovatelnosti na všech platformách)

5) Dostupnost otevřeného zdroje

6) atd.

Klíčovou logikou konstruktérů je zajištění inicializace členů instance. V pythonu mají tito konstruktéři stejnou typickou roli. V pythonu mohou být všichni členové instance inicializováni prostřednictvím těchto konstruktorů.

Konstruktorové typy
Výchozí konstruktorParametrizovaný konstruktor
Toto je výchozí konstruktor, kde nejsou přijaty žádné argumenty.

Výchozí argument je přítomen v případě implicitních konstruktorů jmenovitě self. Tento argument odkazuje na objekt vytvořený pro tuto třídu.

Příklad:

ukázka třídy:

# default konstruktor

def __init __ (self):

# inicializace proměnné instance

self.number_variable = 1001

# metoda

def print_method (self):

print („number number:“, self.number_variable)

obj = sample ()

obj.print_method ()

Výstup:

číslo proměnné: 1001

Parametrovaní konstruktéři v nich přijímají argumenty. Stejně jako výchozí konstruktory i zde jsou první argument, který je vytvářen, odkazem na instanci této třídy a zbývající argumenty jsou definovány programátorem pro odkazování na proměnné instance.

Příklad:

ukázka třídy:

# parametrizovaný konstruktor

def __init __ (self, id, name, age, gender, doj, dob):

self.id_value = id

self.name_value = jméno

self.age_value = věk

self.gender_value = gender

self.doj_value = doj

self.dob_value = dob

def print_output (self):

print („Id value:“, self.id_value)

print („name_value:“, self.name_value)

tisk („age_value:“, self.age_value)

tisk („gender_value:“, self.gender_value)

tisk („doj_value:“, self.doj_value)

tisk („dob_value:“, self.dob_value)

obj1 = vzorek (101, 'Terry', 27, 'male', 10072015, 10071993)

obj1.print_output ()

Výstup :

Id hodnota: 101

name_value: Terry

age_value: 27

gender_value: male

doj_value: 10072015

dob_value: 10071993

Jak funguje Constructor?

Když je objekt vytvořen pro třídu python, pak bude funkce konstruktoru prvním segmentem kódu, který má být zahájen k provedení, a to způsobí, že všechny inicializace se stanou první instancí práce pro program. dva klíčové prvky v tomto procesu konstruktérů jsou níže

  • __Init __ () funkce
  • Vlastní reference

1. Funkce Init ()

Tato funkce se nazývá při vytvoření instance objektu pro odpovídající třídu. tato funkce konstruktoru je potvrzena pomocí klíčového slova def, které je hrozně podobné všem ostatním deklaracím funkcí. další zřetelné věci v těchto deklaracích funkce init ve funkci bude předcházet a připojeno dvojité podtržení.

Příklad

def __init__(self, salary_arg)

2. Vlastní reference

Self odkazuje na objekt sám. Self může odkazovat na funkce a proměnné odpovídající třídě, do které je zapojen. toto musí být nejdůležitější parametr v prohlášení konstruktoru. To znamená, že se očekává, že exponent bude pracovat s atributy tohoto objektu.

Metoda show také používá sebe jako své klíčové slovo

Příklad

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

Příklad programu

Program pomocí příkladu konstruktorů

#!/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 " )

Výstup :
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

Poznámka: instance se inicializují s danými hodnotami úspěšně

Výhody konstruktorů

  • Hlavní výhodou konstruktérů je to, že jsou při inicializaci velmi užitečné
  • Proměnné instance v konečném stavu lze nastavit nebo inicializovat pouze pomocí konstruktorů.
  • Inicializace výchozí hodnoty lze pomocí konstruktorů vynechat
  • když je objekt vytvořen pro třídu python, pak bude funkce konstruktoru prvním segmentem kódu, který má být spuštěn k provedení, a to způsobí, že všechny inicializace se stanou první instancí práce pro program.
  • Konstruktory lze iniciovat s parametry i bez nich

Závěr - Konstruktor v Pythonu

Konstruktory hrají významnou roli ve všech programovacích jazycích na vysoké úrovni. podobně jako v případě pythonu je odpovědnost konstruktérů na prvním místě, pokud je zahrnuta koncepce objektově orientovaného programování. konstruktory pomáhají dosáhnout optimalizovaných inicializací proměnných instance.

Doporučené články

Toto je průvodce Konstruktorem v Pythonu. Zde diskutujeme typy konstruktorů a jak funguje konstruktor v Pythonu. Další informace naleznete také v následujícím článku -

  1. Kompilátory Pythonu
  2. Rozložení v Javě
  3. Python Frameworks
  4. Příkazy C ++

Kategorie: