如何使用 Python 中的根键保存 yaml 键值?
How to save yaml key-values with the root key in Python?
我正在使用 Python 来操作 yaml 文件。我正在尝试保存一个包含键值对的新文件(我想这就是它的名字)。
假设我的 yaml 文件如下所示:
info:
- name: test
version: 1.0
images:
- name: myimage
newtag: 1.0-beta
我可以通过简单的方式将 yaml 文件读入 Python 中的变量:
with open('test.yaml', 'r') as f:
data = yaml.load(f, Loader=yaml.FullLoader)
f.close()
我可以保存一个只有“图像”值的新 yaml 文件:
with open('new.yaml', 'w') as outfile:
yaml.dump(data.get("images"), outfile, default_flow_style=False)
outfile.close()
输出文件如下所示:
- name: myimage
newtag: 1.0-beta
我正在尝试对其进行编码,以便输出文件不只是上面的两行,它还在顶部包含“图像:”键。这个新的 yaml 文件应该与原始文件一样,但除了“images:”之外基本上没有其他键值。我还意识到“图像:”下面的值是缩进的。我发现这很棘手,非常感谢您的帮助。
如果要输出单个键值对,需要给一个dict,只有一个条目:
yaml.dump(dict(images=data.get("images")), outfile, default_flow_style=False)
我正在使用 Python 来操作 yaml 文件。我正在尝试保存一个包含键值对的新文件(我想这就是它的名字)。
假设我的 yaml 文件如下所示:
info:
- name: test
version: 1.0
images:
- name: myimage
newtag: 1.0-beta
我可以通过简单的方式将 yaml 文件读入 Python 中的变量:
with open('test.yaml', 'r') as f:
data = yaml.load(f, Loader=yaml.FullLoader)
f.close()
我可以保存一个只有“图像”值的新 yaml 文件:
with open('new.yaml', 'w') as outfile:
yaml.dump(data.get("images"), outfile, default_flow_style=False)
outfile.close()
输出文件如下所示:
- name: myimage
newtag: 1.0-beta
我正在尝试对其进行编码,以便输出文件不只是上面的两行,它还在顶部包含“图像:”键。这个新的 yaml 文件应该与原始文件一样,但除了“images:”之外基本上没有其他键值。我还意识到“图像:”下面的值是缩进的。我发现这很棘手,非常感谢您的帮助。
如果要输出单个键值对,需要给一个dict,只有一个条目:
yaml.dump(dict(images=data.get("images")), outfile, default_flow_style=False)