in

__init__ en Python – GeeksforGeeks

gfg 200x200 min

Requisitos previos – Clase Python, Objetos, Self

Siempre que la programación orientada a objetos se realiza en Python, la mayoría de las veces nos encontramos __init__ método que normalmente no entendemos por completo. Este artículo explica el concepto principal de __init__ pero antes de entender el __init__ se requieren algunos requisitos previos.

__en eso__

los __init__ el método es similar a constructores en C++ y Java. Los constructores se utilizan para inicializar el estado del objeto. La tarea de los constructores es inicializar (asignar valores) a los miembros de datos de la clase cuando se crea un objeto de la clase. Al igual que los métodos, un constructor también contiene una colección de declaraciones (es decir, instrucciones) que se ejecutan en el momento de la creación del Objeto. Se ejecuta tan pronto como se crea una instancia de un objeto de una clase. El método es útil para realizar cualquier inicialización que desee hacer con su objeto.

Ejemplo:

class Person:  

     

    

    def __init__(self, name):  

        self.name = name  

     

    

    def say_hi(self):  

        print('Hello, my name is', self.name)  

     

p = Person('Nikhil')  

p.say_hi()  

Producción:

Hello, my name is Nikhil

Entendiendo el código

En el ejemplo anterior, se crea un nombre de persona Nikhil. Al crear una persona, se pasa «Nikhil» como argumento, este argumento se pasará al __init__ método para inicializar el objeto. La palabra clave self representa la instancia de una clase y vincula los atributos con los argumentos dados. De manera similar, se pueden crear muchos objetos de la clase Person pasando diferentes nombres como argumentos.

Ejemplo:

class Person:  

     

    

    def __init__(self, name):  

        self.name = name  

     

    

    def say_hi(self):  

        print('Hello, my name is', self.name)  

 

p1 = Person('Nikhil')  

p2 = Person('Abhinav')

p3 = Person('Anshul')

 

p1.say_hi()  

p2.say_hi()

p3.say_hi()

Producción:

Hello, my name is Nikhil
Hello, my name is Abhinav
Hello, my name is Anshul

__init__ con herencia

La herencia es la capacidad de una clase para derivar o heredar las propiedades de otra clase. Consideremos el siguiente ejemplo para ver cómo funciona __init__ en herencia.

 

class A(object):

    def __init__(self, something):

        print("A init called")

        self.something = something

         

 

class B(A):

    def __init__(self, something):

        

        A.__init__(self, something)

        print("B init called")

        self.something = something

         

obj = B("Something")

Producción:

A init called
B init called

Entonces, el constructor de la clase padre se llama primero. Pero en Python, no es obligatorio que el constructor de la clase padre siempre se llame primero. Se puede modificar el orden en el que se llama al método __init__ para una clase principal o secundaria. Esto se puede hacer simplemente llamando al constructor de la clase principal después del cuerpo del constructor de la clase secundaria.

Ejemplo:

 

class A(object):

    def __init__(self, something):

        print("A init called")

        self.something = something

         

 

class B(A):

    def __init__(self, something):

        print("B init called")

        self.something = something

        

        A.__init__(self, something)

         

obj = B("Something")

Producción:

B init called
A init called

Nota: Para saber más sobre la herencia, haga clic aquí.

¡Atención friki! Fortalece tus cimientos con el Fundación de programación de Python Curso y aprende los conceptos básicos.

Para empezar, los preparativos de su entrevista Mejore sus conceptos de estructuras de datos con el Python DS Curso. Y para comenzar con su viaje de aprendizaje automático, únase al Aprendizaje automático – Curso de nivel básico

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ejemplo de operadores de comparación de Python

660px SI derived units

Energía vs potencia: diferencia y comparación