configobj
не поддерживает списки, как вы пытаетесь их использовать, но как разделенные запятыми значения:
[fruit]
favourite = Apple, Orange
В вашем коде вам просто нужно получить доступ к атрибуту, как обычно:
>>> cfg = configobj.ConfigObj('basket.ini')
>>> cfg['fruit']['favourite']
['Apple', 'Orange']
Для получения дополнительной информации, пожалуйста, ознакомьтесь с этой статьей .
Редактировать: Если вам действительно нужно поддерживать файл конфигурации с тем же форматом, что и ввопрос, обратите внимание, что было бы легко написать собственный анализатор для него:
import re
from collections import defaultdict
def parse(f):
data = defaultdict(list)
section = None
for line in f:
line = line.strip()
if not line:
continue
match = re.match('\[(?P<name>.*)\]', line)
if match:
section = match.group('name')
else:
data[section].append(line)
return data
cfg = parse(open('basket.ini'))
print cfg['favoFruit']
Пример вывода:
['Apple', 'Orange']