Я не уверен, я понимаю, это правильно, но если вы хотите создать конфигурационный файл, чтобы легко прочитать список как вы показали затем создать раздел в вашем configs.ini
[section]
key = value
key2 = value2
key3 = value3
, а затем
>> config = ConfigParser.RawConfigParser()
>> config.read('configs.ini')
>> items = config.items('section')
>> items
[('key', 'value'), ('key2', 'value2'), ('key3', 'value3')]
который в основном то, что вы говорите, что вам нужно.
Если с другой стороны, то, что вы говорите, что ваш конфигурационный файл содержит:
[section]
couples = [("somekey1", "somevalue1"), ("somekey2", "somevalue2"), ("somekey3", "somevalue3")]
что вы могли бы сделать, это продлить конфигурационный парсер, как, например, так:
class MyConfigParser(ConfigParser.RawConfigParser):
def get_list_of_tups(self, section, option):
value = self.get(section, option)
import re
couples = re.finditer('\("([a-z0-9]*)", "([a-z0-9]*)"\)', value)
return [(c.group(1), c.group(2)) for c in couples]
, а затем ваш новый парсер может получить ваш список для вас:
>> my_config = MyConfigParser()
>> my_config.read('example.cfg')
>> couples = my_config.get_list_of_tups('section', 'couples')
>> couples
[('somekey1', 'somevalue1'), ('somekey2', 'somevalue2'), ('somekey3', 'somevalue3')]
Вторая ситуация Думаю, я просто делаю все для себя.
Извините, смотрите upd. Мне нужно прочитать его из файла, а не хранить. – Vetalll
Действительно ли это файл конфигурации? Или просто постоянное хранилище данных, с которым пользователям не нужно напрямую взаимодействовать? – roippi
Это действительно конфиг для моего приложения. Модули Pyhton открыты. пользователь может записать некоторые данные в мой модуль. Но я хочу хранить его в конфигах. – Vetalll