Я работаю над программой, которая использует график NetworkX, и между запусками сохраняет его в текстовом файле с помощью jsonpickle. Когда я распаковываю файл, иногда я получаю эту ошибку:
self.graph = jsonpickle.decode (graph_json)
Файл "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/jsonpickle/unpickler.py", строка 41, в декодировании
вернуть context.restore (данные, сброс = сброс, классы = классы)
Файл "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/jsonpickle/unpickler.py", строка 150, для восстановления
значение = self._restore (obj)
Файл "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/jsonpickle/unpickler.py", строка 207, в _restore
возврат восстановить (объект)
Файл "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/jsonpickle/unpickler.py", строка 323, в _restore_object
вернуть self._restore_object_instance (obj, cls)
Файл "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/jsonpickle/unpickler.py", строка 390, в _restore_object_instance
вернуть self._restore_object_instance_variables (объект, экземпляр)
Файл "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/jsonpickle/unpickler.py", строка 440, в _restore_object_instance_variables
instance = self._restore_from_dict (объект, экземпляр)
Файл "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/jsonpickle/unpickler.py", строка 423, в _restore_from_dict
setattr (экземпляр, k, значение)
AttributeError: невозможно установить атрибут
Это мой код:
self.graph = nx.Graph()
file = open('network.txt','w')
graph_json = jsonpickle.encode(self.graph)
file.write(graph_json)
file.close()
file = open('network.txt', 'r')
graph_json = file.read()
file.close()
self.graph = jsonpickle.decode(graph_json)
Это последняя строка, которая выдает ошибку.