La función isinstance () comprueba si el objeto (primer argumento) es una instancia o subclase de la clase classinfo (segundo argumento).
La sintaxis de isinstance()
es:
isinstance (objeto, información de clase)
Parámetros de isinstance ()
isinstance()
toma dos parámetros:
- objeto -
object
para ser verificado - classinfo : clase, tipo o tupla de clases y tipos
Valor de retorno de isinstance ()
isinstance()
devoluciones:
True
si el objeto es una instancia o subclase de una clase o cualquier elemento de la tuplaFalse
de otra manera
Si classinfo no es un tipo o una tupla de tipos, se genera una TypeError
excepción.
Ejemplo 1: ¿Cómo funciona isinstance ()?
class Foo: a = 5 fooInstance = Foo() print(isinstance(fooInstance, Foo)) print(isinstance(fooInstance, (list, tuple))) print(isinstance(fooInstance, (list, tuple, Foo)))
Salida
Verdadero Falso Verdadero
Ejemplo 2: Trabajo de isinstance () con tipos nativos
numbers = (1, 2, 3) result = isinstance(numbers, list) print(numbers,'instance of list?', result) result = isinstance(numbers, dict) print(numbers,'instance of dict?', result) result = isinstance(numbers, (dict, list)) print(numbers,'instance of dict or list?', result) number = 5 result = isinstance(number, list) print(number,'instance of list?', result) result = isinstance(number, int) print(number,'instance of int?', result)
Salida
(1, 2, 3) instancia de lista? Verdadero (1, 2, 3) instancia de dict? ¿Falso (1, 2, 3) instancia de dict o list? ¿Verdadera 5 instancia de lista? Falso 5 instancia de int? Cierto