Файл конфигурации со списком пар ключ-значение в python
У вас есть два достойных serialization варианта:
- Стандартный формат файла конфигурации Python используя ConfigParser
- YAML с помощью такой библиотеки, как PyYAML
Стандартные файлы python-shell конфигурации Python выглядят pythonista как файлы INI с парами [sections]
и python-shell key : value
или key = value
. Преимущества данного configuration формата:
- Никаких сторонних библиотек не требуется
- Простой, знакомый формат файла.
YAML отличается тем, что serialisation он разработан как удобный configuration для человека формат сериализации pythonista данных, а не специально для python настройки. Он очень удобочитаем python и дает вам пару разных способов pythonista представления одних и тех configuration же данных. Для вашей проблемы configuration вы можете создать файл YAML, который serialisation выглядит так:
file .* does not exist : file not found
user .* not found : authorization error
Или вот так:
{ file .* does not exist: file not found,
user .* not found: authorization error }
Использование deserialize PyYAML не может быть проще:
import yaml
errors = yaml.load(open('my.yaml'))
На python данный момент errors
— это словарь python-interpreter Python с ожидаемым форматом. YAML pythonic может представлять не только python-interpreter словари: если вы предпочитаете serialisation список пар, используйте этот serialized формат:
-
- file .* does not exist
- file not found
-
- user .* not found
- authorization error
Или
[ [file .* does not exist, file not found],
[user .* not found, authorization error]]
Который создаст python список списков при вызове pythonista yaml.load
.
Одним из преимуществ YAML unserialize является то, что вы можете python-interpreter использовать его для экспорта serialisation существующих, жестко закодированных python данных в файл для создания python исходной версии, а не для pythonista вырезания/вставки плюс множество py операций поиска/замены для serializing получения данных в нужном serialisation формате. .
Для ознакомления serialisation с форматом YAML потребуется serialized немного больше времени, но serialization использование PyYAML даже python-interpreter проще, чем использование pythonic ConfigParser, с тем преимуществом, что deserialize у вас больше возможностей python-interpreter для представления ваших данных python-interpreter с помощью YAML.
Кажется, что unserialize любой из них будет соответствовать serialization вашим текущим потребностям, с unserialize ConfigParser будет проще serialisation начать, а YAML предоставит serialized вам больше гибкости в будущем, если serialisation ваши потребности расширятся.
Удачи!
python
configuration
serialization
Файл конфигурации со списком пар ключ-значение в python
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.