2015-08-28 5 views
0

Я в настоящее время работает проект с рабочим процессом в следующем виде:Python: Сохранение списка объектов Наружно

Входной проходит через медленный (95% от выполнения программы) процесса для формирования списка вывода (data). Затем в списке выполняются быстрые операции для создания окончательного вывода.

Есть разумный способ я могу хранить data внешне на мой питон скрипт, так что я могу запустить медленный процесс один раз, а затем испытание на заключительных этапах (чтение data в чем его сборке)?

EDIT: считается, что экспорт в «простые» форматы (MS Excel/MySQL) оказался бесполезным, поскольку строки были слишком длинными и содержали специальные символы.

+0

Да, есть много способов сохраняющиеся данных с Python - что вы пробовали, и что именно проблема с этим? – jonrsharpe

+1

Пишите его в файл? Хранить его в базе данных? Солить его? Запустить свой «медленный» код в интерпретаторе, а затем работать с объектом, который все еще хранит интерпретатор в памяти? Да, конечно, есть множество способов сделать это. Что ты спрашиваешь? –

+1

Вы имеете в виду как файл? Посмотрите на 'pickle' – corn3lius

ответ

1

Значит, pickle был тем, что я искал (спасибо corn3lius и Two-Bit Alchemist за их комментарии).

Простой пример (воспроизведен из https://wiki.python.org/moin/UsingPickle):

# Save a dictionary into a pickle file. 
import pickle 
favorite_color = { "lion": "yellow", "kitty": "red" } 
pickle.dump(favorite_color, open("save.p", "wb")) 

# Load the dictionary back from the pickle file. 
import pickle 

favorite_color = pickle.load(open("save.p", "rb")) 
# favorite_color is now { "lion": "yellow", "kitty": "red" }` 
+1

Пока вы помните, что рассыпание небезопасно; существует несколько форматов сериализации чистого текста, подходящих для использования. –

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