我正在使用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文件,其中仅包含“image”值:
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
我试图对其进行编码,以使输出文件不只是上面的两行,而是在顶部包含“images:”键。这个新的yaml文件应该与原始文件一样,但是除了“images:”之外,基本上没有其他键值。我还意识到“images:”下面的值是缩进的。我发现这很棘手,非常感谢您的帮助。
1条答案
按热度按时间oug3syen1#
如果要输出单个键值对,则需要为dict提供一个条目: