El método dir () intenta devolver una lista de atributos válidos del objeto.
La sintaxis de dir()
es:
dir ((objeto))
dir () Parámetros
dir()
toma como máximo un objeto.
- objeto (opcional):
dir()
intenta devolver todos los atributos de este objeto.
Valor de retorno de dir ()
dir()
intenta devolver una lista de atributos válidos del objeto.
- Si el objeto tiene
__dir__()
método, se llamará al método y debe devolver la lista de atributos. - Si el objeto no tiene
__dir__()
método, este método intenta buscar información del__dict__
atributo (si está definido) y del tipo de objeto. En este caso, la lista devueltadir()
puede no estar completa.
Si un objeto no se pasa al dir()
método, devuelve la lista de nombres en el ámbito local actual.
Ejemplo 1: ¿Cómo funciona dir ()?
number = (1, 2, 3) print(dir(number)) print('Return Value from empty dir()') print(dir())
Salida
('__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__ __gt__ ',' __hash__ ',' __iadd__ ',' __imul__ ',' __init__ ',' __init_subclass__ ',' __iter__ ',' __le__ ',' __len__ ',' __lt__ ',' __mul__ ',' __ne__ ',' , '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook'__,', clear 'appe copiar ',' contar ',' extender ',' índice ','insert ',' pop ',' remove ',' reverse ',' sort ') Valor de retorno del directorio vacío () (' __annotations__ ',' __builtins__ ',' __doc__ ',' __loader__ ',' __name__ ',' __package__ ' , '__spec__', 'número')
Ejemplo 2: dir () en un objeto definido por el usuario
class Person: def __dir__(self): return ('age', 'name', 'salary') teacher = Person() print(dir(teacher))
Salida
('edad', 'nombre', 'salario')