Python Glossary English

все Python 3Встроенные функциипонятие

vars

интроспекция

Возвращает __dict__ объекта или словарь текущего локального пространства имён (без аргументов — аналог locals()).

Синтаксис

vars([object])

vars(экземпляра) показывает только его собственные атрибуты — атрибуты и методы класса туда не попадут, они лежат в vars(типа). Возвращается не копия, а живой __dict__: правка этого словаря действительно меняет объект. А если у класса объявлены __slots__ (или это встроенный тип вроде int), никакого __dict__ нет и vars бросит TypeError.

Примеры

class A:
    def __init__(self): self.x=1; self.y=2
a=A()
print(vars(a))  # → {'x':1,'y':2}
print('x' in vars(a))  # → True
print(vars(int)['__add__'])  # → ? слот-обёртка int.__add__ (repr содержит адрес)
print(type(vars()))  # → dict
print('print' in vars(__builtins__) if isinstance(vars(__builtins__),dict) else True)

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности