假设我有这样的课程:
class Wrapper(object):
def __init__(self, obj):
self.__obj = obj
def __getattr__(self, name):
logger.debug('Accessing %s', name)
return getattr(self.__obj, name)
代码库的其他地方是使用 @singledispatch 装饰器的通用函数。我希望“包装”的实例表现得好像它们从未被包装过。因此,例如,pprint(Wrapper({}))
将像pprint({})
我怎样才能做到这一点?