Введение в конструкторы Python
Python - это интерпретируемый и объектно-ориентированный язык программирования высокого уровня, обладающий перечисленными ниже преимуществами. В этой теме мы собираемся узнать о конструкторе в Python.
1) дружелюбие программиста и простота понимания
2) Распространенные библиотеки поддержки
3) Большая гибкость
4) переносимость платформы (возможность масштабирования на любые платформы)
5) Доступность открытого источника
6) И т.д.
Ключевой логикой конструкторов является обеспечение инициализации элементов экземпляра. В python эти конструкторы играют одинаковую типичную роль. В python все члены экземпляра могут быть инициализированы с помощью этих конструкторов.
Типы конструктора | |
Конструктор по умолчанию | Параметризованный конструктор |
Это конструктор по умолчанию, в котором аргументы не принимаются.
Аргумент по умолчанию присутствует в случае конструкторов по умолчанию, которые называются self. Этот аргумент относится к объекту, созданному для этого класса. Пример: образец класса: # конструктор по умолчанию def __init __ (self): # инициализация экземпляра переменной self.number_variable = 1001 # метод def print_method (self): print («числовая переменная:«, self.number_variable) OBJ = образец () obj.print_method () Выход: числовая переменная: 1001 | Параметризованные конструкторы принимают аргументы внутри них. Как и конструкторы по умолчанию, здесь первый создаваемый аргумент ссылается на экземпляр этого класса, а остальные аргументы необходимы и определены программистом для ссылки на переменные экземпляра.
Пример : образец класса: # параметризованный конструктор def __init __ (self, id, имя, возраст, пол, doj, dob): self.id_value = id self.name_value = имя self.age_value = возраст self.gender_value = пол self.doj_value = doj self.dob_value = dob def print_output (self): print («Id value:», self.id_value) печать («name_value:», self.name_value) печать («age_value:», self.age_value) печать («пол_значения:», self.gender_value) print («doj_value:», self.doj_value) print («dob_value:», self.dob_value) obj1 = выборка (101, 'Терри', 27, 'мужчина', 10072015, 10071993) obj1.print_output () Выход : Значение идентификатора: 101 имя_значение: Терри age_value: 27 пол_значения: мужской doj_value: 10072015 dob_value: 10071993 |
Как работает конструктор?
Когда объект создается для класса Python, функция конструктора будет первым сегментом кода, который должен быть инициирован для выполнения, и это заставляет все инициализации происходить как первый экземпляр работы для программы. два ключевых элемента в этом процессе конструкторов, как показано ниже
- __Init __ () функция
- Самостоятельная ссылка
1. Функция Init ()
Эта функция вызывается при создании экземпляра объекта для соответствующего класса. эта функция конструктора подтверждается с помощью ключевого слова def, которое ужасно похоже на все другие объявления функций. другой заметной вещи в объявлении функции init в функции будет предшествовать двойным подчеркиванием с суффиксом.
пример
def __init__(self, salary_arg)
2. Самостоятельная ссылка
Я ссылается на сам объект. Самость может ссылаться на функции и переменные, относящиеся к классу, в котором он участвует. это должен быть главный параметр в объявлении конструктора. Это означает, что показатель степени должен работать с атрибутами этого объекта.
Метод show также использует self в качестве ключевого слова.
пример
def __init__(self, Employee_name, Employee_id, Employee_age):
self.Employee_name = name;
self.Employee_id = id;
self.Employee_age = age
Пример программы
Программа с использованием примера конструкторов
#!/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 " )
Выход :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
Преимущества Конструкторов
- Основным преимуществом конструкторов является то, что они в значительной степени помогают при инициализации
- Переменные экземпляра в конечном состоянии могут быть установлены или инициализированы только с помощью конструкторов.
- Инициализация значений по умолчанию может быть опущена с помощью конструкторов
- когда объект создается для класса Python, тогда функция конструктора будет первым сегментом кода, который должен быть инициирован для выполнения, и это делает все инициализации в качестве первого экземпляра работы для программы.
- Конструкторы могут быть инициированы с параметрами и без параметров
Вывод - конструктор в Python
Конструкторы играют важную роль в каждом языке программирования высокого уровня. Подобно тому, как в случае с Python, ответственность конструкторов в первую очередь возникает, когда подразумевается концепция объектно-ориентированного программирования. Конструкторы помогают оптимизировать инициализацию переменных экземпляра.
Рекомендуемые статьи
Это руководство к конструктору в Python. Здесь мы обсуждаем типы конструктора и как работает конструктор в Python. Вы также можете посмотреть следующую статью, чтобы узнать больше -
- Компиляторы Python
- Макет в Java
- Python Frameworks
- Команды C ++