2012-02-21 6 views
0

Мне было интересно, есть ли способ установить словарь в файле конфигурации и использовать python config parser для его чтения?Python configparser читает словарь

Спасибо.

+1

Солить его. Файлы INI не очень универсальны. – Blender

+0

Что вы подразумеваете под рассолом? – Parth

+1

[Pickle] (http://docs.python.org/library/pickle.html) - это модуль, который позволяет преобразовать объект Python в поток байтов. В принципе, вы можете создать класс «Конфигурация» со всеми необходимыми параметрами, а затем рассортировать его в файл. Когда вы повторно загрузите его, это будет тот же самый класс, который вы изначально мариновали. – Blender

ответ

1

configparser не поддерживает это, но, возможно, вам может быть интересно взглянуть на модуль json.

Адаптирование пример из официального doc:

>>> import json 
>>> s = json.dumps({'4': 5, '6': 7}, sort_keys=True, indent=4) 
>>> print(s) 
{ 
    "4": 5, 
    "6": 7 
} 
>>> json.loads(s) 
{'4': 5, '6': 7} 
3

Используйте eval и просто запустите файл конфигурации.

with open('the_config','r') as config_file: 
    config= eval(config_file.read()) 

Вы увидите комментарии, говорящие вам, что это зло, дыра в безопасности и многое другое. Однако это точно так же безопасно, как ваш источник Python.

+0

@ParthG: «Не могли бы вы уточнить». Да. Если у вас есть конкретный вопрос, я могу предоставить более конкретную информацию. Что смущает вас? –

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