如果我有:
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()
但这并没有达到我的预期。你知道吗
如果有关系的话,我使用的是python2.6。你知道吗
编辑:实际上我偶然发现了一个非常简单的方法:dir(inst)
有一个python模块,叫做} 能帮你。。。你知道吗
inspect
,用于运行时自省。也许^{相关问题 更多 >
编程相关推荐