如果我有:
class myclass():
def __init__(self, x, list):
self.x = x
self.list = list
def __setattr__(self, name, value):
self.__dict__[name] = value
#some stuff
你知道吗
instance = myclass(3, ['a', 'b'])
instance.x = 5
instance.list[1] = 'c'
将为第一个方法而不是第二个方法调用\uuu setattr\uu方法,因为只设置属性的索引而不是属性
当属性列表的索引被更改时,有没有什么方法来控制发生了什么?或者以这种方式将列表作为属性只是一种不好的做法?你知道吗
下面是一个可以做你想做的事情的例子:
相关问题 更多 >
编程相关推荐