检索对象上所有变量的键

2024-09-29 23:15:15 发布

您现在位置:Python中文网/ 问答频道 /正文

如果我有:

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)


Tags: docobjectvarskeysdictclassreturnsmodule

热门问题