📜  Python中的 vars()函数(1)

📅  最后修改于: 2023-12-03 15:04:34.523000             🧑  作者: Mango

Python中的 vars()函数

在Python中,vars()是一种内置函数,用于返回对象的__dict__属性。它可以接受一个对象作为参数,然后返回一个包含该对象所有属性的字典。

用法

vars()函数接受一个参数,可以是任何对象,包括模块、类、实例、函数等等。它返回的是一个字典,其中包含该对象的所有属性。

class MyClass:
    a = 1
    b = 'hello'
    
obj = MyClass()
print(vars(obj))

# 输出: {'__module__': '__main__', 'a': 1, 'b': 'hello', '__dict__': <attribute '__dict__' of 'MyClass' objects>, '__weakref__': <attribute '__weakref__' of 'MyClass' objects>, '__doc__': None}

上述代码中,我们定义了一个名为MyClass的类,对象obj是MyClass的实例。调用vars(obj)返回了一个包含类属性和实例属性的字典。

注意事项
  • 当vars()函数没有参数时,它返回的是调用它的作用域内的所有变量作为字典。
  • 尝试使用vars()获取诸如list、str等内置对象的__dict__属性会引发AttributeError异常。
  • 由于vars()返回的是对象的属性,因此只适用于那些具有__dict__属性的对象。
总结

因此,vars()函数是Python中一个十分实用的内置函数,可以方便地获取对象的属性,并将其转换为字典类型。在编写Python代码时,掌握vars()的使用方法,可以提高程序效率,减少错误和调试时间。