替换yaml文件中的令牌python

问题描述 投票:0回答:1

我有以下 yaml 文件 config.yml:

PATH1: /this/is/the/first/path
PATH2: $PATH1/plus/second/path

我用python是这样读的:

import yaml

with open("../etc/test.yml", "r") as f:
    config = yaml.safe_load(f)
print(config)

这显然是我打印配置字典时得到的:

{'PATH2': '$PATH1/plus/second/path', 'PATH1': '/this/is/the/first/path'}

我想要的是:

{'PATH2': '/this/is/the/first/path/plus/second/path', 'PATH1': '/this/is/the/first/path'}

有什么内置方法可以实现这个目标吗? 或者我必须自己创建一些东西来替换它们?

python yaml
1个回答
1
投票

PY-yaml 库默认不解析环境变量。您需要定义一个隐式解析器,它将找到定义环境变量的正则表达式并执行一个函数来解析它。

© www.soinside.com 2019 - 2024. All rights reserved.