您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在初始化后禁用__setattr__的干净方法

在初始化后禁用__setattr__的干净方法

您正在捕获所有分配,这阻止了构造函数分配self.value。您可以使用self.__dict__访问实例字典。尝试:

class Wrapper:
    def __init__(self, value):
        self.__dict__['value'] = value

    def __setattr__(self, name, value):
        setattr(self.value, name, value)

另一种使用方式object.__setattr__

class Wrapper(object):
    def __init__(self, value):
        object.__setattr__(self, 'value', value)

    def __setattr__(self, name, value):
        setattr(self.value, name, value)
其他 2022/1/1 18:46:05 有371人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶