n2b
Ужасно гемморойно
А что именно гемморойно?
Список можно сбрасывать и загружать cPickle делается одной командой
вот например велосипед:
import cPickle
import os,json
import codecs
def sv(obj,p,encoding="cp1251"):
"""сохранение объектов"""
if os.path.splitext(p)[1]=='.json':
with codecs.open(p,"wt",encoding=encoding) as f:
json.dump(obj,f,indent=1,ensure_ascii=0)
else:
with open(p,"wb") as f:
cPickle.dump(obj,f,2)
def ld(p,encoding="cp1251"):
"""загрузка объектов"""
if os.path.splitext(p)[1]=='.json':
with codecs.open(p,"rt",encoding=encoding) as f:
return json.load(f)
else:
with open(p,"rb") as f:
return cPickle.load(f)
Базы данных нужны если вы:
1 не хотите грузить все данные целиком
2 нужны нетривиальные запросы
По базам начать лучше с shelve sqligth,…
может больше подойдет zodb,mongodb…