Python vars() ビルトイン関数

Python 3 ドキュメントより

モジュール、クラス、インスタンス、または __dict__ 属性を持つその他のオブジェクトの __dict__ 属性を返します。

導入

vars() 関数は、オブジェクトの __dict__ 属性を返します。この辞書には、オブジェクトの書き込み可能な属性が含まれています。これは、オブジェクトのすべての属性を一度に確認するための便利な方法です。

引数なしで呼び出された場合、vars()locals() と同様に機能し、ローカルシンボルテーブルの辞書を返します。

オブジェクトの属性を取得する:

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

my_person = Person("Dwight", 35)
print(vars(my_person))
{'name': 'Dwight', 'age': 35}

引数なしで vars() を使用する:

def my_function():
    x = 10
    print(vars())

my_function()
{'x': 10}

関連リンク