2015-10-24 2 views
1

У меня есть ~ 30 списков, некоторые словари и большинство из них содержат по меньшей мере 200 элементов, целые числа и строки.Каков предпочтительный способ обработки данных в Python?

Данные очищаются с использованием селена и красивого супа для анализа html, а затем разделяются на списки имен/значений, обновляется сайт и повторяется процесс.

В то время как это происходит, я выполняю функции для обработки этих имен/значений в средних значениях, скорости изменения с течением времени, а затем сравнивая их с предыдущими результатами.

В настоящий момент все это просто хранится в памяти внутри моего скрипта python. Я посмотрел на использование файлов csv для хранения и извлечения данных или базы данных sqlite/или даже с использованием базы данных sqlite в памяти, но не знаю, насколько быстрее/медленнее эти параметры.

Любой совет будет очень благодарен!

+0

Решение использовать, зависит от ограничения, которые вы e не указан в вашем вопросе и о конкретных деталях использования сохраненных данных позже. Как написано, ваш вопрос в основном основан на мнениях. Можете ли вы использовать CSV? Да. База данных SQL? Да. Соленья? Да. Свалка JSON? Да. – Louis

+0

Данные расходуются в основном, как только они захватываются, я сказал, что думаю? Я просто беспокоился о верхних границах хранения памяти и должен ли я делать что-то еще, или, точнее, в какой момент мой компьютер не сможет справиться с таким большим количеством данных в памяти! – jfox

+0

Из моего комментария "** конкретных ** деталей". Высказывание «Данные потребляются в основном, как только они захватываются» не является конкретным. – Louis

ответ

1

Вы говорите, что ваши данные в основном Lists и Dicts, тогда мой выбор будет использовать JSON.

JSON идеально подходит для пар key-value, он был первоначально изготовлен для этой цели.

JSON очень легко сериализовать или декодировать, используя модуль json.

Пример сериализации JSON

>>> import json 
>>> json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]') 
['foo', {'bar': ['baz', None, 1.0, 2]}] 

Пример кодирования list и dict к JSON

>>> import json 
>>> json.dumps([1,2,3,{'4': 5, '6': 7}], separators=(',', ':')) 
'[1,2,3,{"4":5,"6":7}]' 

Дополнительная документация доступна по адресу:

https://docs.python.org/3.5/library/json.html

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