Python vars() 函数

Python3 内置函数 Python3 内置函数


vars() 是 Python 中用于返回对象的 __dict__ 属性的内置函数。

vars() 返回一个包含对象所有可写属性的字典。对于没有 __dict__ 的对象,会抛出 TypeError 异常。

单词释义vars 是 variables(变量)的缩写。


基本语法与参数

语法格式

vars(object)

参数说明

  • 参数 object
    • 类型: 任意对象
    • 描述: 要获取属性的对象。

函数说明

  • 返回值: 返回对象的 __dict__ 字典。
  • 注意: 不带参数时等同于 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 内置函数