El archivo yaml del lenguaje Python anida otro yaml

Las bibliotecas de terceros de Python son muy potentes, gracias a todos los que contribuyeron a las bibliotecas de terceros.

Aquí hay un registro de las bibliotecas de terceros que se han utilizado recientemente: pyyaml-include

Instalar:

pip install pyyaml-include

Uso:

Supongamos que existe tal estructura de directorio

├── base 
  ├── base.yml 
└── sub 
  ├── sub1.yml 
  └── sub2.yml
└── caso
  ├──test.py

Referencia sub1.yml y sub2.yml en el archivo base.yml

Modifique el código en test.py:

import yaml, os
 from yamlinclude import YamlIncludeConstructor 
fpath = os.path.dirname (os.path.dirname ( __file__ )) 
Path = lambda p: os.path.join (fpath, p) 
YamlIncludeConstructor.add_to_loader_class (loader_class = yader_class = yader_class = yader_class
 = prueba de def (ruta): 
    p = ruta (fpath, ruta) 
    con open (p) como f: 
        data = yaml.load (f, Loader = yaml.FullLoader)
     devuelve datos 

si  __name__ == ' __main__ ' :
    ruta = ' base / base.yml ' 
    t = prueba (ruta)
     imprimir (t)

Contenidos en el archivo sub1.yml

nombre1: " hola "

Contenidos en el archivo sub2.yml

nombre2: " mundo "

El contenido del archivo base.yml (asignado a sub1.yml, sub2.yml)

file1 
:! include " sub / sub1.yml " 
fle2:! include " sub / sub2.yml "

Ejecute la salida de test.py

archivo1: 
    nombre1: " hola " 
archivo2: 
    nombre2: " mundo "

Esta biblioteca es muy útil cuando se lee la configuración pública. Para diferentes archivos de configuración, se propone que la parte pública genere un nuevo archivo de configuración. Los otros archivos de configuración llaman a la configuración pública para facilitar la modificación posterior de la configuración pública.

 

 

 

Supongo que te gusta

Origin www.cnblogs.com/wx2017/p/12696416.html
Recomendado
Clasificación