Я пытаюсь сохранить словари в потоке, чтобы позже его можно было загрузить. Проблема в том, что когда я печатаю словарь с массивом numpy внутри, он печатает со строкой «массив» перед массивом numpy. Пример:Python: печать словаря с массивом numpy внутри
import numpy as np
import pprint
a = {"hi":"greeting","celeryman":np.array([4,3,3])}
print(a)
pprint.pprint(a)
выше производит выходной сигнал
{'celeryman': array([4, 3, 3]), 'hi': 'greeting'}
{'celeryman': array([4, 3, 3]), 'hi': 'greeting'}
Нужный выход
{'celeryman': [4, 3, 3], 'hi': 'greeting'}
, который я надеюсь, может быть считана без проблем с помощью json.load.
Должен ли я писать для этого свой собственный принтер?
Я знаю, как загрузить нужный вывод в python, а не в строку с массивом. –
Вы говорите, что проблема json - это проблема или форматирование? Если вы хотите сохранить только маринование, которое может обрабатывать массив numpy просто отлично –
Я хочу напечатать словарь в формате, который я могу читать легко позже, без каких-либо специальных символов. Поэтому я думаю, что форматирование является проблемой. Рассол - это одно решение да. Другой - преобразовать все в список перед печатью. –