我想定义一个能够填充自己从另一个实例的序列化数据中读取的类。这是简化的代码:
class MyClass(list):
def __init__(self,**kwargs):
if kwargs.has_key('fdata'):
f = open(kwargs['fdata'],'r')
self = pickle.load(f)
print len(self) #prints 320
f.close()
...
a = MyClass(fdata='data.dat')
print len(a) #prints 0
这是我获得的输出:
320
0
我遇到的问题是返回的实例始终为空,即使我能够读取其中的所有元素__init__()
可能导致这种情况的原因是什么?