YAML Python Binding
YAML Pythonバインディングは、PyYAMLやruamel.yamlが提供するPython向けの解析APIで、yaml.safe_loadとラウンドトリップ編集をサポートする。
目的
PythonアプリケーションでYAMLを読み書きし、YAMLをdict/listへマッピングする。コメント保持とアンカーにも対応する。
メカニズム
PyYAMLでは、yaml.safe_load(stream)がdict/listを返し、yaml.dump(obj)が文字列を返す。ruamel.yamlはラウンドトリップ編集(コメント・順序・アンカーの保持)とYAML 1.2をサポートする。
ユースケース
- Pythonの設定ファイル
- 機械学習のハイパーパラメータ設定
- Ansibleのプレイブック