Función isinstance() de Python Devuelve Verdadero si el objeto es de un tipo específico y, si no coincide, devuelve Falso. En este artículo veremos cómo funciona el método isinstance() en Python
Ejemplo
Input: isinstance([1, 2, 3], list) Output: True Explanation: The first parameter passed is of list type. Input: isinstance(10, str) Output: False Explanation: The first parameter, 10 is an integer and not a string.>
Sintaxis de la función isinstance() de Python
El método isinstance() en Pitón tiene la siguiente sintaxis:
Sintaxis:
isinstancia(obj,clase)
Parámetros:
- objeto: El objeto que debe verificarse como parte de la clase o no.
- clase : clase/tipo/tupla de clase o tipo, con respecto al cual se necesita verificar el objeto.
Devoluciones : Verdadero, si el objeto pertenece a la clase/tipo dado si se pasa una sola clase o a cualquiera de la clase/tipo si se pasa una tupla de clase/tipo, de lo contrario devuelve False.
Error de tecleado: en todo caso, aparte del tipo de clase válido mencionado.
¿Cómo funciona la función instancia() en Python?
En Python, el método instancia() funciona como un operador de comparación. Se necesitan dos argumentos, uno es un objeto Python y el otro es un tipo de clase. Compara el objeto con un tipo específico de clase o subclase y devuelve un valor booleano, que puede ser Verdadero o Falso.
Python3
fusión de PD
numbers>=> [>1>,>2>,>3>,>4>,>2>,>5>]> # Check if 'numbers' is an instance of a list> result>=> isinstance>(numbers,>list>)> if> result:> >print>(>'The variable 'numbers' is an instance of a list.'>)> else>:> >print>(>'The variable 'numbers' is not an instance of a list.'>)> |
>
>Producción
The variable 'numbers' is an instance of a list.>
Ejemplos del método isinstance() en Python
Podemos proporcionar un solo tipo de clase o un tupla de pitón de clases al método instancia(). En el caso de una tupla, el método instancia() comprueba todos los elementos de la tupla y devuelve Verdadero si el objeto es una instancia de cualquiera de los elementos de la tupla; en caso contrario, devuelve Falso. Veamos algunos ejemplos del método instancia() de Python.
Instancia de Python con Int y List
En este ejemplo, veremos cómo funciona el método isinstance() con un tipo de datos Integer y con Lista de Python . Comprobamos si el número entero y la lista son una instancia de un tipo Integer o String.
Python3
# initializing native types> test_int>=> 5> test_list>=> [>1>,>2>,>3>]> # testing with isinstance> print>(>'Is test_int integer? : '> +> str>(>isinstance>(test_int,>int>)))> print>(>'Is test_int string? : '> +> str>(>isinstance>(test_int,>str>)))> print>(>'Is test_list integer? : '> +> str>(>isinstance>(test_list,>int>)))> print>(>'Is test_list list? : '> +> str>(>isinstance>(test_list,>list>)))> # testing with tuple> print>(>'Is test_int integer or list or string? : '> >+> str>(>isinstance>(test_int, (>int>,>list>,>str>))))> |
>
>Producción
jquery este clic
Is test_int integer? : True Is test_int string? : False Is test_list integer? : False Is test_list list? : True Is test_int integer or list or string? : True>
Demostrando el uso de isinstance() con Objetos
En este ejemplo, comprobaremos la clase de un objeto en Python, es decir, si un objeto es una instancia de una clase o su clase derivada.
Python3
# declaring classes> class> gfg1:> >a>=> 10> # inherited class> class> gfg2(gfg1):> >string>=> 'techcodeview.com'> # initializing objects> obj1>=> gfg1()> obj2>=> gfg2()> # checking instances> print>(>'Is obj1 instance of gfg1? : '> +> str>(>isinstance>(obj1, gfg1)))> print>(>'Is obj2 instance of gfg2? : '> +> str>(>isinstance>(obj2, gfg2)))> print>(>'Is obj1 instance of gfg2? : '> +> str>(>isinstance>(obj1, gfg2)))> # check inheritance case> # return true> print>(>'Is obj2 instance of gfg1? : '> +> str>(>isinstance>(obj2, gfg1)))> |
>
>Producción
Is obj1 instance of gfg1? : True Is obj2 instance of gfg2? : True Is obj1 instance of gfg2? : False Is obj2 instance of gfg1? : True>
Python isinstance() con cadena
En este ejemplo, usaremos la función isinstance() con un Cadena de pitón y verificar la clase de un objeto en Python.
Python3
test_str>=> 'techcodeview.com'> print> (>'Is test_str string? : '> +> str>(>isinstance>(test_str,>str>)))> |
>
>Producción
Is test_str string? : True>
Python isinstance() con diccionario
El método isinstance() de Python también funciona con un diccionario objeto y comprobar la clase de un objeto en Python.
Python3
cómo ordenar una lista de matrices en java
test_dict>=> {>'apple'> :>1>,>'Ball'> :>2> }> print> (>'Is test_str dictionary? : '> +> str>(>isinstance>(test_dict,>dict>)))> |
>
>Producción
Is test_str dictionary? : True>
Instancia de Python con métodos de clase
En este ejemplo, usamos el método isinstance() para verificar el valor devuelto por una función de clase con un tipo específico y verificar la clase de un objeto en Python.
Python3
class> geeks:> >course>=> 'DSA'> > >def> purchase(obj):> >return> obj.course> > > geeks.purchase>=> classmethod>(geeks.purchase)> str>(>isinstance>(geeks.purchase(),>str>))> |
>
>
Producción
True>
Diferencia entre los métodos isinstance() y type() en Python
La siguiente tabla demuestra las diferencias entre el método isinstance() y el tipo() método en Python.
| esinstancia() | tipo() |
|---|---|
| Sintaxis: isinstance(objeto, clase) | Sintaxis: tipo (objeto) |
| Comprueba si un objeto es de un tipo de clase específico. | Devuelve el tipo de clase de un objeto. declaración if-else java |
| Puede comprobar si el objeto pertenece a una clase y sus subclases. | No puede ocuparse de la herencia. |
| Es más rápido en comparación con type() | Es más lento que isinstance() |
| Devuelve Verdadero o Falso | Devuelve el tipo del objeto. |
| Puede verificar varias clases a la vez. | No puede hacer esto |
| Ejemplo: isinstancia(10, (int, str)) | Ejemplo: tipo(10) |