1

親クラスに存在するすべての変数を子クラスの 1 つのリストに追加する必要があります。ただし、親クラスのすべての変数は必須ではありません。

変数が親クラスに存在するかどうかを知る方法はありますか??

4

2 に答える 2

1
>>> class A(object):
...     pass
... 
>>> class B(A):
...     pass
... 
>>> B.__bases__
(<class '__main__.A'>,)
>>> getattr(B.__bases__[0],'x',False)
False

またはより包括的な:

class A(object):
    x = 5

class B(A):
    y = 6
    x = 7

print(getattr(B.__bases__[0],'y',False))
print(getattr(B.__bases__[0],'x',False))

出力

False
5
>>> 

したがって、返されるかどうかを確認するだけFalseで、返される場合は、属性が親クラスに存在しないと結論付けることができます。

于 2013-06-24T08:46:31.007 に答える
0

探している属性がわかっている場合は、それらを照合できますdir(parent class)

于 2013-06-24T08:45:37.377 に答える