Python3 从 yaml 中选择值
Python3 pick value from yaml
我有一个 yaml 文件 test.yaml 如下所示
${key_foo}: 'ADjh234hlnlknk'
${key_bar}: 'P98fjljnlkfn'
.
.
.
${key_foobar}: 'knsdlngsg'
我是 python 的新手,正在编写脚本。我想从上面的文件中搜索键 key_bar 并将其值 P98fjljnlkfn 存储到一个没有单引号的变量中。我试过下面的代码,但它没有打印任何东西。我高度怀疑我的 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
我有一个 yaml 文件 test.yaml 如下所示
${key_foo}: 'ADjh234hlnlknk'
${key_bar}: 'P98fjljnlkfn'
.
.
.
${key_foobar}: 'knsdlngsg'
我是 python 的新手,正在编写脚本。我想从上面的文件中搜索键 key_bar 并将其值 P98fjljnlkfn 存储到一个没有单引号的变量中。我试过下面的代码,但它没有打印任何东西。我高度怀疑我的 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