📂 Что такое dir в Питоне? Как использовать dir() в Python
dir в Python — это встроенная функция, которая возвращает список имен атрибутов и методов объекта.
Если вызвать функцию без аргументов, она вернет список имен атрибутов текущего локального пространства имен.
dir()
Если передать объект в качестве аргумента, функция вернет список имен его атрибутов и методов.
dir(объект)
Пример:
class MyClass:
def __init__(self):
self.my_attribute = 10
def my_method(self):
return "Hello, World!"
my_object = MyClass()
print(dir(my_object))
Результат выполнения кода:
['__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__', 'my_attribute', 'my_method']
С помощью функции dir можно узнать доступные атрибуты и методы объекта в Python.
Детальный ответ
В питоне функция "dir" предоставляет список атрибутов и методов объекта. Она является встроенной функцией и используется для исследования внутренней структуры объекта.
Пример использования функции "dir":
class MyClass:
def __init__(self):
self.name = "John"
self.age = 25
def say_hello(self):
print("Hello, world!")
def get_age(self):
return self.age
# Создаем экземпляр класса
obj = MyClass()
# Используем функцию "dir" для получения списка атрибутов и методов объекта
print(dir(obj))
Результат выполнения кода:
['__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', 'get_age', 'name', 'say_hello']
Как видно из результата, функция "dir" вернула список атрибутов и методов объекта "obj". Этот список включает в себя встроенные атрибуты и методы, а также пользовательские атрибуты и методы, которые определены в классе "MyClass".
Если открыть список и разобраться в каждом элементе, можно узнать больше об объекте и его возможностях. Например, в списке присутствуют атрибуты "__class__", "__dir__", "__doc__" и методы "say_hello", "get_age".
Атрибут "__class__" представляет класс, к которому принадлежит объект. Атрибут "__dir__" возвращает список доступных атрибутов объекта. Атрибут "__doc__" содержит документацию о классе или функции.
Методы "say_hello" и "get_age" являются пользовательскими методами, определенными в классе "MyClass".
Важно отметить, что функция "dir" также может использоваться для исследования модулей, встроенных функций и других объектов в питоне.