Найти - Пользователи
Полная версия: Хранение данных, валидаторы
Начало » Python для новичков » Хранение данных, валидаторы
1
n2b
Возникла необходимость где-то хранить информацию.
Информация следующего вида:

Parametr1:
(
NameTable0:
regexp1
regexp2
...

NameTableN:
regexp1
regexp2
...
)
Parametr2:
(
NameTable0:
regexp11
regexp22
...

NameTableN:
regexp11
regexp22
...
)
Щас храню в файлах. Ужасно гемморойно. Хочется другой способ.
Подскажите как лучше.

И еще, подскажите где прочитать доступным языком про написание валидатора(использую wx.Python) для текстового поля?
FishHook
n2b
Возникла необходимость где-то хранить информацию.
Информация следующего вида:

Parametr1:
(
NameTable0:
regexp1
regexp2
...

NameTableN:
regexp1
regexp2
...
)
Parametr2:
(
NameTable0:
regexp11
regexp22
...

NameTableN:
regexp11
regexp22
...
)
Щас храню в файлах. Ужасно гемморойно. Хочется другой способ.
Подскажите как лучше.

И еще, подскажите где прочитать доступным языком про написание валидатора(использую wx.Python) для текстового поля?
Может хранить в базе данных?
pyuser
n2b
И еще, подскажите где прочитать доступным языком про написание валидатора(использую wx.Python) для текстового поля?
здесь, например
doza_and
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…
n2b
pyuser
здесь, например
все отлично, только 1 вопрос. у wx нет встроенных валидаторов на не-буквы, не-цифры?
doza_and
А что именно гемморойно?
Именно геморрой начинается после создания exe при помощи py2exe, приходиться адски бороться с кодировками..
doza_and
Базы данных нужны если вы:
Необходимо от разных пользователей приложения скрыть определенную информацию.
doza_and
По базам начать лучше с shelve sqligth,…
может больше подойдет zodb,mongodb…
Что можете сказать о БЕЗ ПРОБЛЕМНОЙ поддержке русского языка в этих базах? regexp зачастую будет включать в себя русские символы.
FishHook
Может хранить в базе данных?
Можно. Подскажите пожалуйста удобную базу данных, с нормальной поддержкой русских записей без дополнительных танцев с кодировками, простую в использовании.
doza_and
n2b
БЕЗ ПРОБЛЕМНОЙ поддержке русского языка в этих базах
У них у всех нет проблем. А меньше всего проблем с простыми файлами (cPickle).
но я конечно не знаю какие специфичные проблемы будут с py2exe
n2b
Насчет хранения решил вопрос: по совету товарища и наставника s0rg использую sqlite3 и парочка простых команд для ввода, вывода данных. За что ему огромное спасибо за терпение и сказочно-хорошие объяснения процесса и помощь!

Насчет валидаторов мучает вопрос, неужели для проверки поля на пустоту, необходимо писать 30 строк кода? И нет встроенных средств?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB