Python中嵌套YAML到嵌套字典

2024-03-29 07:12:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我不知道如何从嵌套的YAML文件中获取嵌套字典。在

YAML文件看起来像this

device1:
    device_type: cisco_ios
    ip: s1 
    username: admin
    password: 123456
    secret: 123456
    port: 22

device2:
    device_type: cisco_ios
    ip: s2
    username: admin
    password: 123456
    secret: 123456
    port: 22

字典应该是这样的:

^{pr2}$

如何在Python中实现这一点?在


Tags: 文件ipyamlsecret字典adminportdevice
2条回答

只需安装PyYAMLhttps://pypi.org/project/PyYAML/

然后:

import yaml
yaml_as_python_dict = yaml.load(yaml_as_string_or_bytes)

https://pyyaml.org/wiki/PyYAML

Install ^{} from pypi

from ruamel.yaml import YAML
yaml = YAML(typ='safe')
with open('your_yaml_file.yaml') as fp:
    data = yaml.load(fp)

与@glenfant建议的解决方案相反:

  • 不受控制的YAML输入是安全的。在
  • 它支持最新的YAML标准(1.2版,2009年发布)
  • 它在大多数平台上更快(至少在macOS/Windows/Linux上有轮子)

免责声明:我是ruamel.yaml

相关问题 更多 >