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ón | Descripció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.
x = 42print(type(x))
Salida:
<class 'int'>
Uso típico: Para comprobar si dos variables apuntan al mismo objeto en memoria.
a = 10b = aprint(id(a))print(id(b)) # Mismo ID que a, ya que ambos apuntan al mismo objeto
Salida:
140710837832368 (valor de ejemplo)
Esto mostrará todos los métodos disponibles para los objetos de tipo cadena (str), como .upper()
, .lower()
, .split()
, etc.
print(dir(str))
Salida:
['__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(str.upper)
Salida:
Help on method_descriptor:
upper(self, /)Return a copy of the string converted to uppercase.