__setstate__
およびメソッドが何をするのか分からない__getstate__
ので、簡単な例を挙げて教えてください。
ベストアンサー1
これはPythonの非常に簡単な例です。ピクルスドキュメント。
class Foo(object):
def __init__(self, val=2):
self.val = val
def __getstate__(self):
print("I'm being pickled")
self.val *= 2
return self.__dict__
def __setstate__(self, d):
print("I'm being unpickled with these values: " + repr(d))
self.__dict__ = d
self.val *= 3
import pickle
f = Foo()
f_data = pickle.dumps(f)
f_new = pickle.loads(f_data)
出力:
I'm being pickled
I'm being unpickled with these values: {'val': 4}