【发布时间】:2023-04-07 02:26:02
【问题描述】:
我有一个要使用 Python 代码更新的 .yaml 文件。
假设它看起来像这样:
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”包。
【问题讨论】:
-
您是否遇到某种错误?
-
不,它只是没有改变任何东西
-
由于某种原因,它似乎没有写入文件
-
所以(为了清楚起见)如果您在更改后打印状态,您会看到它已应用 - 但它不会保存回文件?不确定我的 Python 技能:您的行
yaml.dump(f)
在with .. as f:
范围之外访问f
不是问题吗? -
您的评论很有道理,所以我试了一下,但这看起来还是不行。文件仍未写入
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用 Python 更改 yaml 文件中的值 - Python技术站