management - python3 load config file
¿Cuál es el uso previsto de la sección DEFAULT en los archivos de configuración utilizados por ConfigParser? (1)
Encontré una explicación here buscando en Google "windows ini" "sección predeterminada". Resumen: lo que sea que ponga en la sección [DEFAULT] se propaga a cada otra sección. Usando el ejemplo del sitio web vinculado, digamos que tengo un archivo de configuración llamado 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
Puedo leer esto usando ConfigParser:
>>> cp = ConfigParser.ConfigParser()
>>> cp.read(''test1.ini'')
[''test1.ini'']
>>> cp.get(''host 1'', ''lh_server'')
''192.168.0.1''
Pero noto que lh_server es el mismo en ambas secciones; y, de hecho, me doy cuenta de que será lo mismo para la mayoría de los hosts que pueda agregar. Entonces puedo hacer esto, como 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
A pesar de que las secciones no tienen las claves lh_server, aún puedo acceder a ellas:
>>> cp.read(''test2.ini'')
[''test2.ini'']
>>> cp.get(''host 1'', ''lh_server'')
''192.168.0.1''
Lea la página vinculada para obtener un ejemplo más del uso de la sustitución de variables en la sección DEFAULT para simplificar aún más el archivo INI.
He usado ConfigParser durante bastante tiempo para configuraciones simples. Una cosa que me molestó durante mucho tiempo es la sección DEFAULT. No estoy seguro de qué es un uso apropiado. He leído la documentación, pero realmente me gustaría ver algunos ejemplos inteligentes de su uso y cómo afecta a otras secciones del archivo (algo que realmente ilustra el tipo de cosas que son posibles).