给出以下代码:
import pickle
class Test:
d = {}
def func(self):
self.d['x'] = 'y'
test = Test()
test.func()
pickle.dump(test, open('test.p', 'wb'))
%reset
import pickle
class Test:
d = {}
def func(self):
self.d['x'] = 'y'
print(pickle.load(open('test.p', 'rb')).d)
我希望输出
y
y
但是,实际输出是
y
{}
这是一个已知的错误还是我误解了什么?
我在 Windows 上使用 Miniconda Python 3.5.2 。
答案 0 :(得分:3)