Python3 从 yaml 中选择值

Python3 pick value from yaml

我有一个 yaml 文件 test.yaml 如下所示

${key_foo}: 'ADjh234hlnlknk'
${key_bar}: 'P98fjljnlkfn'
.
.
.
${key_foobar}: 'knsdlngsg'

我是 python 的新手,正在编写脚本。我想从上面的文件中搜索键 key_bar 并将其值 P98fj​​ljnlkfn 存储到一个没有单引号的变量中。我试过下面的代码,但它没有打印任何东西。我高度怀疑我的 if 语句,但无法弄清楚正确的语法应该是什么。

#!/usr/bin/env python3

import yaml

yaml_file = open("/path/to/file/test.yaml", 'r')
yaml_content = yaml.load(yaml_file)

for key, value in yaml_content.items():
        if (f"{key}") == "key_bar":
                print(f"{value}")
        else:
                continue

谁能帮我得到这个值?

独立于您的 YAML 结构(我不是 YAML 专家),您的 Python 代码可以这样更改:

import yaml

with open("./test.yaml", 'r') as yaml_file:
    yaml_content = yaml.safe_load(yaml_file)

for key, value in yaml_content.items():
    if key == r"${key_bar}":
        print(value)

哪个returns:

P98fjljnlkfn