看看这个简单的片段
from SwitchState import SwitchState
s1 = SwitchState()
s1.add(12345, True)
s2 = SwitchState()
print(s2.get_all())
结果是:[(12345, True)]
!
我将该项目添加到s1
,但也在s2
中获得了该项目!我做错了什么?
SwitchState.py
import struct
class SwitchState(object):
_states = []
def add(self, timestamp, state):
self._states.append((timestamp, state))
def get_all(self):
return self._states
答案 0 :(得分:1)
它们都具有相同的_states
,因为它是一个类属性。
class ...
def __init__(self):
self._states = []