为什么set的行为与python中类变量的字典不同。例如
class Test1:
x=set()
y={}
hamster=Test1()
chinchilla=Test1()
hamster.x.add('hi') # now both sets in both instances have 'hi'
hamster.y['key']=5 # only the hamster instance will contain 5
感谢您的帮助:)
EDIT:我还注意到,如果在init()中定义self.x=set(),就可以避免添加到这两个实例的问题。删除了打字错误
不,你错了,你们都有
key:5
:实际上,在您的代码中,您没有更改实例变量,而是更改类变量:
您需要在此处使用实例变量:
相关问题 更多 >
编程相关推荐