gpt4 book ai didi

python - 使用 Python 更改 yaml 文件中的值

转载 作者:太空宇宙 更新时间:2023-11-03 12:31:26 26 4
gpt4 key购买 nike

我有一个 .yaml 文件,我想用 Python 代码更新。假设它看起来像这样:

  state: 'present'

我想要一个更改状态并保存文件的代码。我正在尝试这样的事情但失败了:

def set_state(state):
with open("file_to_edit.yaml", 'rw') as f:
doc = yaml.load(f)
doc['state'] = state
yaml.dump(f)

我正在使用 Python 的“yaml”包。

最佳答案

问题是 yaml.dump(doc) 实际上并没有写入文件。相反,it returns the modified YAML as a string除非您也将文件描述符作为参数传递,这样您就可以直接写入文件。

以下应该有效:

def set_state(state):
with open('file_to_edit.yaml') as f:
doc = yaml.load(f)

doc['state'] = state

with open('file_to_edit.yaml', 'w') as f:
yaml.dump(doc, f)

关于python - 使用 Python 更改 yaml 文件中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40762382/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com