logo

Cómo comprobar el tipo de un objeto en Python

En este artículo, exploraremos la habilidad esencial de determinar el tipo de objeto en Pitón . Antes de realizar cualquier operación sobre un objeto dentro del lenguaje de programación Python, es imperativo poseer el conocimiento de cómo verificar su tipo. Esta tarea fundamental se encuentra regularmente, ya sea que esté trabajando en un proyecto personal o en un sistema de producción complejo.

Verifique el tipo de un objeto en Python

Python ofrece varios métodos para identificar el tipo de un objeto, siendo el más básico la función incorporada type(), que proporciona una forma rápida de comprobar el tipo de un objeto. Técnicas más avanzadas, como la es instancia (), ofrece la ventaja de manejar jerarquías de clases y herencia. Comenzaremos repasando la función incorporada type() y luego pasaremos a métodos más avanzados como el es instancia () función , la propiedad __class__ y otras.



Obtener e imprimir el tipo de objeto: tipo()

tipo() devuelve el tipo del objeto. Es similar a un tipo en otros lenguajes de programación en que puede usarse para obtener e imprimir el tipo de una variable o literal.

Python3








print>(>type>(>'string'>))> #> print>(>type>(>500>))> #> print>(>type>([>9>,>8>,>7>]))> #>

>

>

Producción

>

Obtener e imprimir el tipo de objeto: isinstance()

es instancia (objeto, tipo) devuelve Verdadero si el argumento del objeto es una subclase o instancia del parámetro de tipo proporcionado. Utilice una tupla como segunda opción para comprobar varios tipos. Devuelve True si el objeto es una instancia de cualquiera de los tipos proporcionados.

Python3




print>(>isinstance>(>'string'>,>str>))> # True> print>(>isinstance>(>300>,>str>))> # False> print>(>isinstance>(>700>, (>int>,>str>)))> # True>

>

>

Producción

True False True>

Obtener e imprimir el tipo de objeto: atributo class__

En Python, todo es un objeto y cada objeto tiene sus propias características. El atributo '__class__' es el único que puede devolver el tipo de clase del objeto. El atributo __class__ en Python también se puede utilizar para verificar el tipo de objeto además de las funciones integradas.

Cada objeto Python tiene un atributo llamado __class__ que contiene la información de clase del objeto. Por ejemplo, la clase del número entero 5 se puede encontrar usando el siguiente código.

Python3


pies contra pie



x>=> 10> print>(x.__class__)> #> y>=> 'GeeksForGeeks'> print>(y.__class__)> #> z>=> 90.0> print>(z.__class__)> #>

>

>

Producción

>

Obtener e imprimir el tipo de un objeto: operador '==' y tipo()

Otro método para determinar el tipo de un objeto es utilizar la función type() y el operador ==. Esto se puede utilizar para comparar el tipo de un objeto con una clase específica. Por ejemplo, para determinar si el número entero 5 es de tipo int, podemos usar el siguiente código:

Pitón




x>=> 5> print>(>type>(x)>=>=> int>)> # True> y>=> 5.0> print>(>type>(y)>=>=> float>)> # True> z>=> 'techcodeview.com'> print>(>type>(z)>=>=> int>)> # False>

>

>

Producción

True True False>

Recuerde que Python es un lenguaje de tipo dinámico, lo que significa que el tipo de una variable puede cambiar mientras se utiliza. Como resultado, puede ser necesario comprobar el tipo de elemento antes de realizar tareas específicas. Por ejemplo, para sumar dos números, debemos asegurarnos de que ambos sean enteros o flotantes.

Ejemplo

El código anterior demuestra cómo el tipo de objeto de una variable podría cambiar durante la ejecución.

Pitón




x>=> 10> print>(>type>(x))> x>=> 'GeeksForGeeks'> print>(>type>(x))>

>

>

Producción

>

La declaración de impresión inicial mostraba el tipo como 'int' ya que 10 es un número entero, pero después de asignar una cadena a la misma variable, la misma declaración de impresión mostraba el tipo como 'str' ​​debido al cambio dinámico del tipo de objeto.

La naturaleza de tipo dinámico de Python requiere el proceso de verificar los tipos de objetos. Por ejemplo, si deseamos sumar dos números, debemos asegurarnos de que ambos sean enteros o flotantes. Las operaciones de tipos de clases incompatibles darían lugar a errores que sólo podrían depurarse utilizando funciones como type() o el otro enfoque de acceder a la propiedad '__class__'.

En resumen, dominar la verificación de tipos de objetos en Python es crucial para los desarrolladores de todos los niveles, ya sea un principiante o un programador experimentado. Comprender las técnicas, como type(), isinstance() y clase , es esencial para crear código eficiente y confiable. Estos métodos proporcionan un conjunto de herramientas versátil para diversos escenarios de verificación de tipos y mejorarán su competencia en el desarrollo de Python.