2016-12-21 3 views
-2

У меня есть маринованный предмет, который я хочу загрузить. Тем не менее, Рассол дает какие-то странные (возможно, связанные с памятью) ошибки, которые кратко описаны здесь, а также:Как загрузить объекты рассола с помощью JSON в Python 2.7?

Python Pickling Dictionary EOFError

При загрузке, он просто выдает ошибку EOF, в то время как это делает для более мелких объектов. Сохранение объекта как JSON было невозможным (этот How to make a class JSON serializable не работал, например) из-за этой ошибки: объект AttributeError: 'numpy.ndarray' не имеет атрибута 'dict', что было очень странно. Когда я проверяю тип всех значений в объектах, там нет массивов ... так что если кто-то знает, как это решить, это тоже ценится!

В любом случае, я хочу избежать этого и прочитать объект через JSON вместо Pickle (или любым другим способом, если на то пошло). Это вообще возможно? Есть ли какие-либо обходные пути для этой проблемы? Можно ли как-то преобразовать его после того, как я уже сохранил объекты Pickled, не читая его с помощью Pickle!

Заранее благодарим!

+3

Это как сказать «Я написал это эссе на английском языке, но я не могу его прочитать, поэтому я хочу прочитать его как французский». Это не имеет никакого смысла. – user2357112

ответ

0

№. Модуль json не может читать маринованные данные, так как Pickle не является JSON. Преобразование Pickle в JSON было бы эквивалентно распаковке, а затем сериализации как JSON, обе из которых вы сказали, не работают.

Смежные вопросы