Saltearse al contenido

Información sobre objetos

Estas funciones están diseñadas para inspeccionar y comprender los objetos en tiempo de ejecución. Son especialmente útiles durante el desarrollo, depuración y documentación del código. Permiten conocer el tipo de un objeto, su ubicación en memoria, o acceder a su ayuda integrada. Usarlas facilita el desarrollo más seguro y mantenible, especialmente en entornos dinámicos.

FunciónDescripción
type()Devuelve el tipo del objeto especificado.
id()Retorna la dirección o identificador único del objeto en memoria.
help()Muestra la documentación integrada (docstring) de funciones, objetos, módulos, etc.
dir() Lista los atributos y métodos disponibles para un objeto.

A continuacion te explicare con mas detalle el funcionamiento de estas funciones:

Uso típico: Para verificar si una variable es del tipo esperado antes de realizar operaciones con ella.

type.py
x = 42
print(type(x))

Salida:

type.py
<class 'int'>

Uso típico: Para comprobar si dos variables apuntan al mismo objeto en memoria.

id.py
a = 10
b = a
print(id(a))
print(id(b)) # Mismo ID que a, ya que ambos apuntan al mismo objeto

Salida:

id.py
140710837832368 (valor de ejemplo)

Esto mostrará todos los métodos disponibles para los objetos de tipo cadena (str), como .upper(), .lower(), .split(), etc.

dir.py
print(dir(str))

Salida:

dir.py
['__add__', '__class__', '__contains__', '__delattr__', '__dir__',
'__doc__', '__eq__', '__format__', '__ge__', '__getattribute__',
'__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__',
'__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__',
'__ne__', '__new__', '__reduce__', '__repr__', '__rmod__', '__rmul__',
'__setattr__', '__sizeof__', '__str__', '__subclasshook__',
'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith',
'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isascii',
'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric',
'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower',
'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition',
'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase',
'title', 'translate', 'upper', 'zfill']

Uso típico: Durante la exploración o aprendizaje de una función o método. Muy útil en entornos interactivos como la terminal o Jupyter Notebook.

help.py
help(str.upper)

Salida:

help.py
Help on method_descriptor:
upper(self, /)
Return a copy of the string converted to uppercase.