Ver Mensaje Individual
  #9 (permalink)  
Antiguo 11/09/2013, 08:33
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Cómo capturo el tipo de CUALQUIER variable?

type devuelve el tipo de la variable.

Pero recuerda que en python todo es un objeto. Y un objeto no necesariamente es de un solo tipo. ¿Que tal si es una instancia que hereda de diferentes clases? En ese caso type no te va a servir de mucho.

Si lo quieres es compararlo con algún otro tipo usa isinstance.

Por ejemplo las clases str y unicode heredan de basestring.

Con type
Código Python:
Ver original
  1. type('') == str # True
  2. type('') == unicode # False
  3. type('') == basestring # False
  4.  
  5. type(u'') == str # False
  6. type(u'') == unicode # True
  7. type(u'') == basestring # False

Con isinstance
Código Python:
Ver original
  1. isinstance('', str) # True
  2. isinstance('', unicode) # False
  3. isinstance('', basetring) # True
  4.  
  5. isinstance(u'', str) # False
  6. isinstance(u'', unicode) # True
  7. isinstance(u'', basetring) # True

Por ultimo no tengo idea para que necesitas saber el tipo. Python no es débilmente tipado como php. Entonces cosas como.

Código Python:
Ver original
  1. 2 == '2'
Siempre te darán falso.