Простой пример использования __ setstate __ и __ getstate __

Я не знаю что __setstate__ и __getstate__ методы делают, поэтому помогите мне с простым примером.

65
задан Christian Hudon 21 May 2015 в 04:41
поделиться

2 ответа

Вот очень простой пример для Python 2, который должен дополнять pickle docs .

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:", d
     self.__dict__ = d
     self.val *= 3

import pickle
f = Foo()
f_string = pickle.dumps(f)
f_new = pickle.loads(f_string)
60
ответ дан 24 November 2019 в 15:29
поделиться

Эти методы используются для управления процессом маринования и удаления объектов с помощью рассола. модуль. Обычно это обрабатывается автоматически, поэтому, если вам не нужно переопределить способ маринования или выделения класса, вам не следует об этом беспокоиться.

4
ответ дан 24 November 2019 в 15:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: