¿Qué es una instancia en Python y cómo implementarla?



Este artículo le presentará un método que es Isinstance en Python y le dará una explicación conceptual completa con demostración.

es uno de los lenguajes de programación más potentes disponibles en el mercado actual. Python también admite la implementación de otros lenguajes de programación dentro de su ecosistema como Java, C y C ++. De los muchos módulos y funciones que están disponibles en el ecosistema Python, uno que se destaca entre el resto es isinstance en Python. Así, en este artículo hablaremos en detalle sobre isinstance, sus usos y las características que trae a la mesa.

En este artículo se cubrirán los siguientes consejos,





¡Vamos a empezar!

¿Qué es Isinstance en Python?

La instancia de Python se usa para verificar si el primer objeto que es el argumento es una instancia o subclase de la clase classinfo que es el segundo argumento.



La sintaxis de isinstance en Python es la siguiente.

isinstance (objeto, información de clase)

Veamos qué parámetros y valor de retorno tiene Isinstance en Python,



Parámetro y valor de retorno de Isinstance

Parámetro

Ahora que conoce la sintaxis de isinstance, echemos un vistazo más de cerca al parámetro que tiene en cuenta.

  1. Objeto: este es el objeto que debe comprobarse.
  2. Classinfo: esta es la clase, información o la tupla de clases con las que se debe verificar el objeto.

Valor devuelto

Cuando se utiliza isinstance en un programa, el valor de retorno depende de una serie de condiciones, como se explica en los indicadores siguientes.

  1. Se devuelve verdadero si el objeto es una subclase de classinfo o tupla de clases.
  2. Se devuelve falso si el objeto no es una subclase de classinfo o tupla de clases.

Si en una situación particular, classinfo no es un tipo o una tupla de tipos, entonces se genera una excepción typeerror en la pantalla del usuario.

Ejemplos

estructura básica del programa java

Para comprender mejor el uso de isinstance, echemos un vistazo a algunos ejemplos.

Ejemplo 1

clase Foo: a = 5 fooInstance = Foo () print (isinstance (fooInstance, Foo)) print (isinstance (fooInstance, (lista, tupla))) print (isinstance (fooInstance, (lista, tupla, Foo)))

Salida

Cierto

Falso

Cierto

Isinstance en Python: Ejemplo # 2

números = [1, 2, 3] resultado = isinstance (números, lista) print (números, 'instancia de lista?', resultado) resultado = isinstance (números, dict) print (números, 'instancia de dict?', resultado ) resultado = isinstancia (números, (dict, lista)) print (números, 'instancia de dict o lista?', resultado) número = 5 resultado = isinstancia (número, lista) print (número, 'instancia de lista?', resultado) resultado = isinstance (número, int) print (número, 'instancia de int?', resultado)

Salida

[1, 2, 3] instancia de lista? Cierto

[1, 2, 3] instancia de dict? Falso

[1, 2, 3] instancia de dict o list? Cierto

5 instancia de lista? Falso

5 instancia de int? Cierto

Ejemplo # 3

# Código Python para la clase isinstance () Prueba: a = 5 TestInstance = Test () print (isinstance (TestInstance, Test)) print (isinstance (TestInstance, (lista, tupla))) print (isinstance (TestInstance, (lista, tupla) , Prueba)))

Salida

Cierto

Falso

Cierto

cadena hasta la fecha en java

Continuemos con el artículo 'Isinstance In Python' y entendamos el uso del método Type,

El uso de Type en Python

Similar a isinstance, hay otro método incorporado en Python que se usa para verificar el tipo de variable pf que se está usando durante el tiempo de ejecución. Si se pasa un solo argumento u objeto a través del método de tipo, devuelve el tipo de objeto que se está utilizando durante el tiempo de ejecución.

Para comprender esto mejor, eche un vistazo al siguiente ejemplo.

Isinstance en Python: Ejemplo # 1.1

# Código Python type () con un solo parámetro de objeto x = 5 s = 'sampleoutput' y = [1,2,3] print (type (x)) print (type (s)) print (type (y))

Salida

clase 'int'

clase 'str'

Lista de clase'

Ejemplo # 1.2

sobrecarga vs anulación en java
# Código Python para type () con un nombre, # bases y parámetro dict o1 = type ('X', (object,), dict (a = 'Foo', b = 12)) print (type (o1)) print (vars (o1)) prueba de clase: a = 'Foo' b = 12 o2 = tipo ('Y', (prueba,), dict (a = 'Foo', b = 12)) print (tipo (o2)) imprimir (vars (o2))

Salida

{‘B’: 12, ‘a’: ‘Foo’, ‘__dict__’:, ‘__doc__’: None, ‘__weakref__’:}

{‘B’: 12, ‘a’: ‘Foo’, ‘__doc__’: None}

Comparemos Type e Isinstance en Python,

Diferencia entre Type () e Isinstance

Type e isinstance en Python tienen dos funciones muy diferentes. Eche un vistazo a los siguientes indicadores para comprender mejor la diferencia entre ellos.

  1. Si necesita comprobar si un objeto tiene un tipo determinado, lo mejor es utilizar isinstance. Esto se debe a que isinstance podrá comprobar si el objeto pasado en el primer argumento es del mismo tipo que el pasado en el segundo argumento.
  2. Por otro lado, el uso de tipo es más preferido cuando simplemente necesita verificar el tipo de un objeto en particular y no compararlo con otro.

Ejemplo

# Código de Python para ilustrar la clase de escritura de pato Usuario (objeto): def __init __ (self, firstname): self.firstname = firstname @property def name (self): return self.firstname class Animal (object): pass class Fox (Animal) : name = 'Fox' class Bear (Animal): name = 'Bear' # Use el atributo .name (o propiedad) independientemente del tipo para a en [User ('SampleOutput'), Fox (), Bear ()] : imprimir (un.nombre)

Salida

SampleOutput

Fox

Oso

Otra razón para no utilizar el método type es la falta de herencia. Eche un vistazo a los ejemplos que se comparten a continuación para comprender esto mejor.

# código python para ilustrar la falta de # soporte para la herencia en la clase type () MyDict (dict): '' 'Un dict normal, que siempre se crea con una clave' inicial '' '' def __init __ (self): self [ 'initial'] = 'algunos datos' d = MyDict () print (type (d) == dict) print (type (d) == MyDict) d = dict () print (type (d) == dict) print (tipo (d) == MyDict)

Salida

Falso

Cierto

Cierto

Falso

Así que esto, chicos, esto nos lleva al final de este artículo. Espero que haya entendido Isinstance en Python y lo que hace.

Para obtener un conocimiento profundo de Python junto con sus diversas aplicaciones, puede para capacitación en línea en vivo con soporte 24/7 y acceso de por vida.

Tienes una pregunta para nosotros? Menciónalos en la sección de comentarios de este artículo y nos comunicaremos contigo.