Bevezetés a Python-konstruktorokba

A Python egy értelmezett és objektum-orientált magas szintű programozási nyelv, amely az alábbiakban felsorolt ​​programozási előnyöket biztosítja. Ebben a témában megismerjük a Python építőjét.

1) programozóbarát és könnyen érthető

2) Széles körű támogató könyvtárak

3) Nagyobb rugalmasság

4) platform hordozhatósága (bármilyen platformon méretezhető képesség)

5) Nyílt forráskódú elérhetőség

6) stb.

A konstruktorok kulcseleme az, hogy biztosítsák a példánytagok inicializálását. A pythonban ezek a konstruktorok ugyanolyan tipikus szerepet játszanak. A pythonban az összes példánytagot inicializálni lehet ezen konstruktorokon keresztül.

Kivitelező típusok
Alapértelmezett kivitelezőParaméterezett konstruktor
Ez egy alapértelmezett konstruktor, ahol nem fogadnak el érvet.

Alapértelmezett argumentum van az alapértelmezett konstruktorok esetében, nevezetesen énnek. Ez az érv arra az objektumra utal, amelyet az osztály számára létrehoznak.

Példa:

osztályminta:

# alapértelmezett kivitelező

def __init __ (én):

# a változó példány inicializálása

self.number_variable = 1001

# egy metódus

def print_method (önálló):

nyomtatás („számváltozó:“, ön.szám: változó)

obj = minta ()

obj.print_method ()

Kimenet:

szám változó: 1001

A paraméterezett konstruktorok érveket fogadnak el bennük. Az alapértelmezett konstruktorokhoz hasonlóan itt is az első létrehozott argumentum hivatkozik ennek az osztálynak a példányára, a többi argumentumra pedig szükség van, és a programozónak meg kell határoznia a példányváltozókat.

Példa :

osztályminta:

# paraméteres konstruktor

def __init __ (én, azonosító, név, életkor, nem, doj, dob):

self.id_value = id

self.name_value = név

self.age_value = életkor

self.gender_value = nem

self.doj_value = doj

self.dob_value = dob

def print_output (önálló):

nyomtatás („Id érték:”, saját.id_érték)

nyomtatás („név_érték:”, saját.név_érték)

nyomtatás („életkor_érték:”, saját.érték_érték)

nyomtatás („gender_value:”, self.gender_value)

nyomtatás (“doj_value:”, self.doj_value)

print („dob_value:”, self.dob_value)

obj1 = a minta (101, 'Terry', 27, 'férfi', 10072015, 10071993)

obj1.print_output ()

Kimenet :

Azonosító érték: 101

név_érték: Terry

életkor: 27

gender_érték: férfi

doj_value: 10072015

dob_érték: 10071993

Hogyan működik a konstruktor?

Amikor egy objektumot létrehoznak egy python osztályhoz, akkor a kivitelező függvény lesz az első kódszakasz, amelyet végrehajtáshoz kezdeményeznek, és ez minden inicializálást a program első munkapéldányává tesz. a konstruktorok ezen folyamatának két kulcsfontosságú eleme az alábbiakban látható

  • __Init __ () függvény
  • Saját referencia

1. Init () funkció

Ezt a funkciót akkor hívják, amikor a megfelelő osztály objektumapéldánya létrehozásra kerül. ezt a konstruktor funkciót egy def kulcsszó használatával erősítik meg, amely rettegően hasonlít az összes többi függvénynyilatkozathoz. egy másik észrevehető dolog ezen init funkció deklarációjában a függvényben kettős aláhúzás előtte és utótaggal kiegészítve.

Példa

def __init__(self, salary_arg)

2. Saját referencia

Az én maga a tárgyra hivatkozik. Az én hivatkozhat az osztályhoz tartozó függvényekre és változókra, amelyben részt vesz. ennek a legelső paraméternek kell lennie a kivitelező nyilatkozatában. Ez azt jelenti, hogy a kitevő várhatóan működni fog az objektum attribútumaival.

A bemutató módszer az én-t is használja kulcsszóként

Példa

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

Példa programra

Program kivitelezők segítségével Példa

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

Kimenet :
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

Megjegyzés: A példányok sikeresen inicializálódnak a megadott értékekkel

A konstruktorok előnyei

  • A konstruktorok fő előnye, hogy nagyban segítenek az inicializálásban
  • A végső állapotban lévő példányváltozók csak konstruktorok segítségével állíthatók be vagy inicializálhatók.
  • Az alapértelmezett érték inicializálását a konstruktorok segítségével el lehet hagyni
  • amikor egy objektumot létrehoznak egy python osztályhoz, akkor a kivitelező függvény lesz az első kódszakasz, amelyet végrehajtás céljából kezdeményeznek, és ez az összes inicializálást a program első munkapéldányává teszi.
  • A konstruktorok paraméterekkel és anélkül is elindíthatók

Következtetés - konstruktor Pythonban

A kivitelezők jelző szerepet játszanak minden magas szintű programozási nyelvben. hasonlóan a pythonhoz, az építők felelőssége elsősorban a helyén van, amikor az objektum-orientált programozás fogalmát merítik. A konstruktorok segítenek az optimalizált példányváltozók inicializálásában.

Ajánlott cikkek

Ez egy útmutató a Python építőjéhez. Itt tárgyaljuk a kivitelező típusokat és hogyan működik a Python kivitelezője. A következő cikkben további információkat is megnézhet -

  1. Python összeállítók
  2. Elrendezés Java-ban
  3. Python keretek
  4. C ++ parancsok

Kategória: