Функция vars() в Python

Python3 内置函数Встроенные функции Python3


vars()является встроенной функцией в Python для возврата объекта__dict__атрибуты.

vars()Возвращает словарь, содержащий все записываемые атрибуты объекта. Для объектов, у которых отсутствует__dict____dict__, возникает исключение TypeError.

Определения слов: vars 是 variables(变量)的缩写。


Базовый синтаксис и параметры

Формат синтаксиса

vars(object)

Описание параметра

  • Параметр object:
    • Тип: любой объект
    • Описание: объект, атрибуты которого необходимо получить.

Описание функций

  • Возвращаемое значение: возвращает__dict__словарь __dict__ объекта.
  • Примечание: при вызове без аргументов это эквивалентно locals()locals()。

Примеры

Пример 1: Просмотр атрибутов объекта

Пример

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

p = Person("Tom", 20)

# Просмотр __dict__ объекта
print(vars(p))
# Вывод: {'name': 'Tom', 'age': 20}

# Доступ к словарю
print(vars(p)["name"])  # Вывод: Tom

Ожидаемый вывод:

{'name': 'Tom', 'age': 20}
Tom

Анализ кода:

  1. vars() возвращает словарь атрибутов экземпляра объекта.
  2. К атрибутам можно получить доступ напрямую через словарь.

Пример 2: Модуль и класс __dict__

Пример

# __dict__ модуля
import os
print(len(vars(os)))  # Вывод: количество атрибутов модуля os

# __dict__ класса (исключая атрибуты экземпляра)
class MyClass:
    class_attr = 100
    def __init__(self):
        self.instance_attr = 200

print(vars(MyClass))
# Вывод: {'__module__': '__main__', 'class_attr': 100, '__init__': ...}

Вывод:

vars() очень помогает понять структуру объекта.

vars()Это часто используется для отладки и динамического доступа к атрибутам.


Python3 内置函数Встроенные функции Python3


Другие расширения