Cómo instanciar una clase en Python

Cómo instanciar una clase en Python

Instanciar una clase es un principio muy básico del uso del enfoque de programación orientado a objetos (OOP), y las personas a menudo confunden este término con algo complejo. En Python, la instancia de una clase o la creación de su instancia se realiza creando una variable y estableciéndola igual al nombre de clase con paréntesis, al igual que llamaría una función.

Esta publicación actuará como una guía y explicará lo que se entiende por instancias de instancias y el proceso de instancia de una clase en detalle.

Qué instancias de una clase en Python?

Instanciar una clase simplemente significa crear un duplicado/copia de una clase de Python, que contendrá todas las variables, funciones y atributos de la clase original. Al referirse a la instancia desde el punto de OOP, entonces es el proceso de crear variables de objeto de la clase.

Nota: Hacer objetos/copias de una clase también se llama creación de instancias de una clase, por lo tanto, el término "instanciar" una clase

Cómo instanciar una clase en Python?

Como se mencionó anteriormente, para instanciar una clase, debe llamar al nombre de la clase como si llamaría una función normal y almacenaría el resultado en una variable. Nuevamente, en términos OOP, se llama llamar al constructor. Sin embargo, causa confusión entre las personas, ya que no especifica el método del constructor con el mismo nombre en Python.

De todos modos, la sintaxis de instancias de una clase es la siguiente:

objvar = className (InitializeVaríaseargumentos)

En esta sintaxis:

  • objvar es la variable en la que se almacena la copia de la clase, o es un objeto de la clase
  • Nombre de la clase() es el nombre de la clase que se instancia en una variable
  • InitializeVariaBeBrearguments son los argumentos que se utilizarán para inicializar los valores de las variables de la clase (opcional)

Ejemplo 1: Instanciar una clase básica en Python

Para demostrar el método de instancias de una clase, primero debe tener una clase. Por lo tanto, tome el siguiente fragmento de código que creará una clase para personas con los nombres de dos personas almacenadas en variables y una función para imprimir el nombre de persona1:

Persona de clase:
P1Name = "John Doe"
p2name = "Rudy Taylor"
Def getNamep1 (yo):
volver a ser.P1Name;

Después de eso, cree una variable llamada "POBJ1" y configúrela igual al nombre de clase "Persona" con soportes redondos para hacer una copia de la clase dentro de POBJ1:

POBJ1 = Person ()

Después de eso, puede usar la variable POBJ1 con el operador DOT para acceder a las variables y la función de la clase de la persona:

Imprima ("Acceda directamente a la variable:", POBJ1.P2Name)
Imprimir ("Llamar a la función de la clase:", POBJ1.getNamep1 ())

El fragmento de código para este ejemplo es el siguiente:

Persona de clase:
P1Name = "John Doe"
p2name = "Rudy Taylor"
Def getNamep1 (yo):
volver a ser.P1Name;
POBJ1 = Person ()
Imprima ("Acceda directamente a la variable:", POBJ1.P2Name)
Imprimir ("Llamar a la función de la clase:", POBJ1.getNamep1 ())

Cuando ejecute este código, producirá el siguiente resultado en el terminal:

De esta salida, puede concluir claramente que ha instanciado con éxito la clase de la persona.

Ejemplo 2: Instanciación de una clase en Python pasando valores

Si una clase tiene variables no inicializadas, tendrá que pasarlos valores al crear instancias de esa clase. Para demostrar esto, tome el siguiente código de clase:

Persona de clase:
def __init __ (self, p1name, p2name):
ser.P1Name = P1Name
ser.P2Name = P2Name
Def getNamep1 (yo):
volver a ser.P1Name;

En esta clase, las variables P1Name y P2Name no están inicializadas, y debe pasar el valor al crear la instancia de la siguiente manera:

POBJ1 = Persona ("Alex", "Monroe")

Una vez hecho eso, puede usar el POBJ1 para acceder a las variables y funcionar como en el primer ejemplo:

Imprima ("Acceda directamente a la variable:", POBJ1.P2Name)
Imprimir ("Llamar a la función de la clase:", POBJ1.getNamep1 ())

El fragmento de código completo para este ejemplo es como:

Persona de clase:
def __init __ (self, p1name, p2name):
ser.P1Name = P1Name
ser.P2Name = P2Name
Def getNamep1 (yo):
volver a ser.P1Name;
POBJ1 = Persona ("Alex", "Monroe")
Imprima ("Acceda directamente a la variable:", POBJ1.P2Name)
Imprimir ("Llamar a la función de la clase:", POBJ1.getNamep1 ())

Cuando ejecute este programa, creará la siguiente salida en el terminal:

Has instanciado con éxito una clase con variables no inicializadas con éxito.

Conclusión

La instancia de una clase es el proceso de crear instancias de esa clase que contienen todas las variables, funciones y otros atributos, que pueden llamarse una copia de esa clase. Para instanciar una clase, debe llamar a su método de constructor, y en Python, el método del constructor es el nombre de la clase seguido de corchetes, al igual que llamar a una función. Una vez que se ha instanciado una clase, puede acceder a los atributos de la clase copiada utilizando un operador DOT.