Функция vars() в Python
avatar
7 | (offline)
❤️‍🔥Notehunter Developer
Добавлено:
Категория: Основы «Python»
Комментариев: 0

Функция vars() в Python возвращает атрибут __dict__ который содержит все атрибуты объекта, которые могут быть доступны для записи, объектом может быть экземпляр, класс, модуль. 

Синтаксис: 

vars([obj])
  • Если аргумент для функции vars() не указан, то функция работает как locals().
  • Аргументы могут быть: модулем, экземпляром класса, классом.
  • Если же аргумент не имеет атрибута __dict__, то мы получим исключение TypeError.

Пример:

class Person:

    def __init__(self, name, age):
        self.name = name
        self.age = age

p = Person('Vladislav', 23)

print(vars(Person))
print(vars(p))

Результаты:

>>> {'__module__': '__main__', '__init__': <function Person.__init__ at 0x000002834081FD00>, '__dict__': <attribute '__dict__' of 'Person' objects>, '__weakref__': <attribute '__weakref__' of 'Person' objects>, '__doc__': None}

>>> {'name': 'Vladislav', 'age': 23}

Использование vars() без аргументов:

print(vars())

Результат:

>>> {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x000001CBC6EE49A0>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'C:\\Users\\Razilator\\Desktop\\Projects\\Coding\\articles\\vars\\main.py', '__cached__': None, 'Person': <class '__main__.Person'>, 'p': <__main__.Person object at 0x000001CBC6DC7D60>}
Теги записи: Python, Основы Python, vars(),
Комментарии к статье 0
Комментариев нет
Форма добавления комментария (необходима регистрация)