Я нашел объяснение здесь , прибегая к помощи "windows ini" "раздел по умолчанию". Резюме: все, что вы помещаете в раздел [DEFAULT], распространяется на все остальные разделы. Используя пример со ссылочного сайта, допустим, у меня есть файл конфигурации с именем test1.ini:
[host 1]
lh_server=192.168.0.1
vh_hosts = PloneSite1:8080
lh_root = PloneSite1
[host 2]
lh_server=192.168.0.1
vh_hosts = PloneSite2:8080
lh_root = PloneSite2
Я могу прочитать это, используя ConfigParser:
>>> cp = ConfigParser.ConfigParser()
>>> cp.read('test1.ini')
['test1.ini']
>>> cp.get('host 1', 'lh_server')
'192.168.0.1'
Но я замечаю, что lh_server одинаков в обоих разделах; и действительно, я понимаю, что это будет то же самое для большинства хостов, которые я мог бы добавить. Так что я могу сделать это, как test2.ini:
[DEFAULT]
lh_server=192.168.0.1
[host 1]
vh_root = PloneSite1
lh_root = PloneSite1
[host 2]
vh_root = PloneSite2
lh_root = PloneSite2
Несмотря на то, что в разделах нет ключей lh_server, я все равно могу получить к ним доступ:
>>> cp.read('test2.ini')
['test2.ini']
>>> cp.get('host 1', 'lh_server')
'192.168.0.1'
Прочитайте связанную страницу для дальнейшего примера использования подстановки переменных в разделе ПО УМОЛЧАНИЮ, чтобы еще больше упростить файл INI.