私はいくつかのテストを行うために小さなモッククラスを書いています。
ただし、このクラスは、ネストされた属性を持つという考えをサポートする必要があります。
この例は、問題に対する洞察を提供するはずです。
class Foo(object):
def __init__(self):
self.x = True
上記のクラスから、次のことができます。
f = Foo()
f.x
AttributeErrorを回避するためにフォールバックする属性を追加できることはわかっていますが__getattr__
、このようなものを有効にする必要がある場合はどうなりますか?
f = Foo()
f.x
f.x.y
f.x.y.z()
オブジェクトがとして呼び出された場合に何を返すかはわかっていますが、f.x.y.z()
それを実現する方法を見つける必要がありますz()
。