Python 基础教程

Python 高级教程

Python 相关应用

Python 笔记

Python FAQ

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/python-builtin-functions-vars.html

python 返回对象 object 的属性和属性值的字典对象的内置函数 vars 详解

Python 内置函数 Python 内置函数


vars() 是一个内置函数,用于返回一个对象的属性和属性值的字典对象。它通常用于获取对象的状态信息或者在调试时查看对象的属性。该函数可以应用于各种类型的对象,包括自定义类的实例、内置类型的实例以及模块等。

函数语法

vars([object])

参数:

  • object (可选):要检索属性的对象。如果提供了这个参数,vars() 将返回该对象的属性和属性值字典。如果省略这个参数,函数将返回当前作用域的局部变量和值的字典。

示例代码

接下来,让我们通过一些示例代码来说明这个函数的用法。

示例 1:检索模块的属性和属性值:

import math

module_vars = vars(math)
print(module_vars)

运行结果:

{'__name__': 'math', '__doc__': "This module provides access to the mathematical functions\ndefined by the C standard.", ...}

示例 2:检索对象的属性和属性值:

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

person = Person("Alice", 30)
person_vars = vars(person)
print(person_vars)

运行结果:

{'name': 'Alice', 'age': 30}

示例 3:检索局部变量的属性和属性值:

def example_function():
    var1 = 10
    var2 = "Hello"
    var3 = [1, 2, 3]
    local_vars = vars()
    print(local_vars)

example_function()

运行结果:

{'var1': 10, 'var2': 'Hello', 'var3': [1, 2, 3]}

总结

vars() 函数是一个方便的工具,用于检索对象的属性和属性值。它对于调试、动态获取对象状态以及一些反射操作非常有用。需要注意的是,对于大多数对象来说,该函数只能获取到对象的实例变量,而不能获取到类变量。同时,如果对象没有实例变量,vars() 返回一个空字典。

总体而言,vars() 函数在日常编程中具有一定的实用性,但在生产代码中,更常见的做法是通过正式的属性和方法来访问对象的状态信息。