为什么+=在列表上表现得出乎意料?
+=
class foo: bar = [] def __init__(self,x): self.bar += [x]class foo2: bar = [] def __init__(self,x): self.bar = self.bar + [x]f = foo(1)g = foo(2)print f.barprint g.bar f.bar += [3]print f.barprint g.bar f.bar = f.bar + [4]print f.barprint g.bar f = foo2(1)g = foo2(2)print f.bar print g.bar
输出量
[1, 2][1, 2][1, 2, 3][1, 2, 3][1, 2, 3, 4][1, 2, 3][1][2]
foo += bar
foo = foo + bar
+=
POPMUISE
相关分类