YAML in Python: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 40: Line 40:
Suggestions on how to safely recursively navigate a complex data structure:
Suggestions on how to safely recursively navigate a complex data structure:
{{Internal|Python Safely Navigate a Complex Data Structure#Overview|Safely Navigate a Complex Data Structure}}
{{Internal|Python Safely Navigate a Complex Data Structure#Overview|Safely Navigate a Complex Data Structure}}
=Configure <tt>yaml.dump()</tt> to render blank instead of <tt>null</tt>=

Revision as of 20:07, 3 August 2022

Internal

PyYAML

https://pyyaml.org/
https://pyyaml.org/wiki/PyYAMLDocumentation
https://pypi.org/project/PyYAML/

PyYAML provides YAML serialization/deserialization in Python.

Installation

pip install pyyaml

requirements.txt:

pyyaml == 5.3.1

To install, see the "Installation" section from https://pyyaml.org/wiki/PyYAMLDocumentation.

Deserialize YAML

import yaml

with open('some-file.yaml', 'rt') as f:
  content = f.read()
data = yaml.load(content, Loader=yaml.Loader)

Serialize YAML

import yaml

# with the default flow style, the document is rendered in a non-indented manner 
print (yaml.dump(data, default_flow_style=False))

Safely Navigate a Complex Data Structure

Suggestions on how to safely recursively navigate a complex data structure:

Safely Navigate a Complex Data Structure

Configure yaml.dump() to render blank instead of null