【问题标题】:Python3 pick value from yamlPython3 从 yaml 中选择值
【发布时间】:2022-01-01 18:55:50
【问题描述】:

我有一个如下的 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 文件结构无效

标签: python yaml


【解决方案1】:

独立于您的 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)

返回:

P98fjljnlkfn

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-20
    • 1970-01-01
    • 2020-03-09
    • 1970-01-01
    • 2020-07-06
    • 2019-07-05
    • 1970-01-01
    • 2016-05-14
    相关资源
    最近更新 更多