tutorial parser node formato example español archivo python xml parsing yaml

python - parser - yaml tutorial español



¿Analizar un archivo YAML en Python y acceder a los datos? (1)

Soy nuevo en YAML y he estado buscando formas de analizar un archivo YAML y utilizar / acceder a los datos del YAML analizado.

He encontrado explicaciones sobre cómo analizar el archivo YAML, por ejemplo, el tutorial PyYAML, " ¿Cómo puedo analizar un archivo YAML en Python ", " Convertir el dict de Python al objeto? ", Pero lo que no he encontrado es una ejemplo simple sobre cómo acceder a los datos del archivo YAML analizado.

Supongamos que tengo un archivo YAML como:

treeroot: branch1: branch1 text branch2: branch2 text

¿Cómo accedo al texto "texto de branch1"?

" Analizando YAML y Python? " Proporciona una solución, pero tuve problemas para acceder a los datos de un archivo YAML más complejo. Y, me pregunto si hay alguna forma estándar de acceder a los datos de un archivo YAML analizado, posiblemente algo similar a la notación " elementpath " o " elementpath " o algo que se usaría al analizar un archivo XML.


Dado que la función yaml.load() de yaml.load() analiza los documentos YAML en estructuras de datos nativas de Python, solo puede acceder a los elementos por clave o índice. Usando el ejemplo de la pregunta que vinculó:

import yaml with open(''tree.yaml'', ''r'') as f: doc = yaml.load(f)

Para acceder branch1 text deberías usar:

txt = doc["treeroot"]["branch1"] print txt "branch1 text"

porque, en su documento YAML, el valor de la clave branch1 está debajo de la clave treeroot .