Python 检索对象上所有变量的键

Python 检索对象上所有变量的键,python,class,multiple-inheritance,Python,Class,Multiple Inheritance,如果我有: class A(object): varA = 1 inst = A() 那么我如何检索inst上所有变量的键呢?我想要像[“varA”] 到目前为止,我已经了解到: vars(inst.__class__).keys() #returns ['__dict__', '__weakref__', '__module__', 'varA', '__doc__'] 我没问题,我只是忽略了双底内翻。我的问题是继承的多个层次,如: class A(object): va

如果我有:

class A(object):
    varA = 1

inst = A()
那么我如何检索inst上所有变量的键呢?我想要像
[“varA”]

到目前为止,我已经了解到:

vars(inst.__class__).keys() #returns ['__dict__', '__weakref__', '__module__', 'varA', '__doc__']
我没问题,我只是忽略了双底内翻。我的问题是继承的多个层次,如:

class A(object):
    varA = 1

class B(A):
    varB = 2

inst = B()
vars(inst.__class__).keys() #returns ['__module__', '__doc__', 'varB']
但我想找回瓦布和瓦拉。你知道我该怎么做吗

我还尝试:

vars(super(B, inst).__class__).keys()+vars(inst.__class__).keys()
但这并没有达到我的预期

如果重要的话,我使用的是Python 2.6

编辑:实际上我刚刚偶然发现了一种非常简单的方法:
dir(inst)

有一个python模块,名为
inspect
,用于运行时内省。也许可以帮你…

是的,这正是我想要的。我过去用过inspect,但我忘记了它的功能。我不知道。我将改变我的例子以符合标准。