Introducción a los constructores de Python

Python es un lenguaje de programación de alto nivel interpretado y orientado a objetos que posee las ventajas de programación enumeradas a continuación. En este tema, vamos a aprender sobre Constructor en Python.

1) programador amigable y fácil de entender

2) Bibliotecas de soporte generalizadas

3) Mayor flexibilidad

4) portabilidad de plataforma (capacidad de escalabilidad en cualquier plataforma)

5) Disponibilidad de código abierto

6) Etc.

La lógica clave detrás de los constructores es garantizar la inicialización de los miembros de la instancia. En python a estos constructores juegan el mismo papel típico. En python, todos los miembros de la instancia se pueden inicializar a través de estos constructores.

Tipos de constructores
Constructor predeterminadoConstructor parametrizado
Este es un constructor predeterminado donde no se aceptan argumentos.

Un argumento predeterminado está presente en el caso de los constructores predeterminados, llamados self. Este argumento se refiere al objeto que se está creando para esta clase.

Ejemplo:

muestra de clase:

# Constructor predeterminado

def __init __ (self):

# inicializando instancia variable

self.number_variable = 1001

# un método

def print_method (self):

print (“variable de número:“, self.number_variable)

obj = muestra ()

obj.print_method ()

Salida:

variable de número: 1001

Los constructores parametrizados aceptan argumentos dentro de ellos. Al igual que los constructores predeterminados aquí, el primer argumento que se crea hace referencia a la instancia de esta clase y el resto de los argumentos son necesarios y definidos por el programador para hacer referencia a las variables de instancia.

Ejemplo:

muestra de clase:

# constructor parametrizado

def __init __ (self, id, nombre, edad, género, doj, dob):

self.id_value = id

self.name_value = name

self.age_value = age

self.gender_value = género

self.doj_value = doj

self.dob_value = dob

def print_output (self):

print ("Id value:", self.id_value)

print ("name_value:", self.name_value)

print ("age_value:", self.age_value)

print ("gender_value:", self.gender_value)

print ("doj_value:", self.doj_value)

print ("dob_value:", self.dob_value)

obj1 = muestra (101, 'Terry', 27, 'hombre', 10072015, 10071993)

obj1.print_output ()

Salida:

Valor de identificación: 101

nombre_valor: Terry

age_value: 27

valor_de_género: masculino

valor_Doj: 10072015

valor_Dob: 10071993

¿Cómo funciona el constructor?

Cuando se crea un objeto para una clase de python, la función constructora será el primer segmento de código que se iniciará para la ejecución y esto hace que todas las inicializaciones sucedan como la primera instancia de trabajo para el programa. Los dos elementos clave en este proceso de constructores son los siguientes

  • Función __Init __ ()
  • Auto referencia

1. Función Init ()

Se llama a esta función cuando se crea la instancia del objeto para la clase correspondiente. Esta función constructora se afirma utilizando una palabra clave def que es terriblemente similar a todas las demás declaraciones de funciones. Otra cosa notable en estas declaraciones de función de inicio en la función irá precedida y con sufijo de guiones bajos dobles.

Ejemplo

def __init__(self, salary_arg)

2. Auto referencia

El yo hace referencia al objeto mismo. El self puede referirse a las funciones y variables respectivas a la clase dentro de la cual está involucrado. Este tiene que ser el parámetro más importante en la declaración del constructor. Significa que se espera que el exponente trabaje con los atributos de este objeto.

El método show también usa self como palabra clave

Ejemplo

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

Programa de ejemplo

Programa usando Constructores Ejemplo

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

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

Nota: Las instancias se inicializan con los valores dados.

Ventajas de los constructores

  • La principal ventaja de los constructores es que son de gran ayuda en la inicialización.
  • Las variables de instancia en estado final solo se pueden establecer o inicializar utilizando constructores.
  • Las inicializaciones de valores predeterminados se pueden omitir usando constructores
  • cuando se crea un objeto para una clase python, la función constructora será el primer segmento de código que se iniciará para su ejecución y esto hace que todas las inicializaciones sucedan como la primera instancia de trabajo para el programa.
  • Los constructores pueden iniciarse con y sin parámetros.

Conclusión - Constructor en Python

Los constructores juegan un papel importante en todos los lenguajes de programación de alto nivel. similar a como en el caso de python, la responsabilidad de los constructores es primordial cuando el concepto de programación orientada a objetos está implícito. los constructores ayudan a lograr inicializaciones de instancia de instancia optimizadas.

Artículos recomendados

Esta es una guía de Constructor en Python. Aquí discutimos los tipos de constructores y cómo funciona el constructor en Python. También puede consultar el siguiente artículo para obtener más información:

  1. Compiladores de Python
  2. Diseño en Java
  3. Marcos de Python
  4. Comandos C ++