python 修改嵌套yml的值

在Python中,修改嵌套YAML文件的值可以通过加载文件到一个字典结构中进行操作,然后将修改后的字典写回文件。这里是一个使用PyYAML库来读取和修改嵌套YAML内容的示例:

 

python

import yaml

def update_yaml_value(yaml_file, path_to_key, new_value):
    # 读取yaml文件
    with open(yaml_file, 'r') as file:
        data = yaml.safe_load(file)

    # 更新嵌套字典中的值
    keys = path_to_key.split('.')
    current_dict = data
    for key in keys[:-1]:
        current_dict = current_dict.setdefault(key, {})
    current_dict[keys[-1]] = new_value

    # 将更新后的内容写回yaml文件
    with open(yaml_file, 'w') as file:
        yaml.dump(data, file, default_flow_style=False)

# 使用示例
update_yaml_value('my_config.yml', 'nested.key.path', 'new_value')

这个函数接受三个参数:

  • yaml_file:要修改的YAML文件路径。
  • path_to_key:要修改的键的路径字符串,以点.分隔各个层级(例如 "nested.key.path")。
  • new_value:新的值。

此函数首先打开并读取YAML文件到一个字典对象中,然后通过提供的路径字符串递归地导航到需要修改的嵌套键,并设置新的值。最后,它将修改后的字典内容重新写入原始YAML文件。记得导入PyYAML模块并在实际项目中安装它(如果尚未安装的话):

 

bash

pip install pyyaml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三希

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值