Función dir() en Python

En Python, dir() es una función incorporada que se utiliza para obtener una lista de nombres válidos en el alcance actual o de un objeto en particular. Proporciona una vista de los atributos y métodos disponibles en un objeto, módulo o en el ámbito global del programa.

  • La función dir() en python devuelve todas las propiedades y métodos del objeto especificado, sin los valores.
  • Esta función devolverá todas las propiedades y métodos, incluso las propiedades integradas que son predeterminadas para todos los objetos.

Sintaxis función dir() en Python

Esta es la sintaxis de la función dir()

dir(object)

Parámetro:

  • objeto (opcional): Es el objeto del cual se desea obtener la lista de atributos. Si no se proporciona este argumento, dir() mostrará los nombres de los atributos del alcance actual.

Ejemplo función dir() en Python con un objeto

Mostrar el contenido de un objeto: Para utilizar la función dir() en Python con un objeto, primero debemos crear una instancia de la clase Person. Luego, podemos utilizar dir() para obtener una lista de los atributos válidos de esa instancia.

Aquí está el ejemplo con la clase Person y la función dir():

class Person:
  name = "Pepe"
  age = 35
  country = "Mexico"

# Crear una instancia de la clase Person
person_instance = Person()

# Obtener una lista de atributos válidos del objeto person_instance
atributos_person = "dir"(person_instance)

# Imprimir la lista de atributos
"print"(atributos_person)

En este ejemplo, hemos definido la clase Person con tres atributos: name, age y country. Luego, hemos creado una instancia de la clase Person llamada person_instance. Después, utilizamos la función dir(person_instance) para obtener una lista de los atributos válidos de person_instance, y almacenamos esa lista en la variable atributos_person. Finalmente, imprimimos la lista de atributos utilizando print(atributos_person).

Resultado

['__class__',
 '__delattr__',
 '__dict__', 
 '__dir__', 
 '__doc__', 
 '__eq__', 
 '__format__', 
 '__ge__', 
 '__getattribute__', 
 '__gt__', 
 '__hash__', 
 '__init__', 
 '__init_subclass__', 
 '__le__', 
 '__lt__', 
 '__module__', 
 '__ne__', 
 '__new__', 
 '__reduce__', 
 '__reduce_ex__', 
 '__repr__', 
 '__setattr__', 
 '__sizeof__', 
 '__str__', 
 '__subclasshook__', 
 '__weakref__', 
 'age', 
 'country', 
 'name']

La lista resultante incluye los atributos de la clase Person, así como algunos métodos especiales y atributos internos proporcionados por Python para todos los objetos, como __class__, __dict__, __doc__, __eq__, __str__, entre otros. Los atributos que definimos en la clase, como name, age y country, también están presentes en la lista.

Ejemplo función dir() en Python sin argumentos

Cuando se utiliza la función dir() en Python sin argumentos, esta devuelve una lista de nombres de atributos válidos en el alcance actual. El alcance actual puede ser el alcance global si se ejecuta a nivel de módulo o el alcance local si se ejecuta dentro de una función o bloque de código.

Aquí está el ejemplo de cómo usar dir() sin argumentos:

def mi_funcion():
    variable_local = 10
    print("Atributos en el alcance local:", dir())

variable_global = 20
"dir"("Atributos en el alcance global:", dir())

mi_funcion()

En este ejemplo, definimos una función llamada mi_funcion(). Dentro de esta función, creamos una variable local llamada variable_local. Luego, utilizamos dir() sin argumentos para obtener una lista de atributos válidos en el alcance local. Al llamar dir() dentro de la función, obtenemos tanto los atributos locales como los atributos globales.

Fuera de la función, en el alcance global, también utilizamos dir() sin argumentos para obtener una lista de atributos válidos en el alcance global. La lista resultante incluye los atributos definidos en el alcance global, como la función mi_funcion y la variable variable_global.

En resumen, al usar dir() sin argumentos, podemos obtener una lista de los atributos válidos en el alcance actual, ya sea en el alcance global o en un alcance local dentro de una función o bloque de código.

Valores de parámetros

ParámetroDescripción
ObjetoEl objeto del que desea ver los atributos válidos