vars() 对象的 __dict__
最后更新:2026-09-22
vars() 对象的 __dict__
vars() 不传参数等价于 locals();传对象返回对象的 __dict__。
| 分类 | 内置函数 |
|---|---|
| 类型 | 内置函数 |
| Python 版本 | all |
📝 语法
vars([object])
⚙️ 参数
| object 可选 | 模块、类或实例;省略时返回当前局部变量字典。(默认值:None) |
|---|
返回值:返回对象的 __dict__ 属性字典;无参时等价于 locals()。
💥 异常
TypeError— 对象没有 __dict__ 属性(如 list)时抛出。
▶ 示例
编辑下方代码,点击运行,在输出面板查看结果:
运行结果:
{'x': 1}
🏷️ 相关内置函数
💡 相关案例
更多实战案例即将上线,敬请期待。
❓ 常见问题
Qvars(obj) 返回什么?
A返回对象的 __dict__,即实例自己定义的属性字典,不含继承来的属性。
Qvars() 不带参数和 locals() 一样吗?
A一样,都返回当前局部作用域的变量字典。
Q为什么 vars([1, 2]) 报 TypeError?
Alist 实例没有 __dict__ 属性,很多内置类型不存实例字典;对这类对象只能用 dir() 查看属性名。
Qvars() 和 dir() 有什么区别?
Avars(obj) 返回“实例自己的属性键值对”,dir(obj) 返回“能找到的所有属性名列表(含继承)”。