如何从Yaml生成的词典动态打印信息?

也许我有个小问题,但我无法解决。我是python的新手,如果可以的话,请帮帮我。 我有一个用于配置的yaml文件。像这样:

---
prod:
  app1:
    hosts:
      - host1
      - host2
  app2:
    hosts:
      - host3
      - host4

我想使用此Yaml生成菜单。我的问题是,我无法从数据结构中打印详细信息。 据我所知,如果我读yaml,结果将是字典。

def read_env():
    with open("env.yaml",'r') as stream:
        try:
            data = yaml.load(stream)
            return data
        except yaml.YAMLError as exc:
            print(exc)
        finally:
            stream.close()

如果我手动打印出一些东西,那没关系:

print(data["prod"]["app1"]["hosts"])

此行代码将向我们显示“ host1,host2”。 我该怎么做?

mylist = []
mylist.append(prod)
mylist.append(app2)
mylist.append(hosts)

print(data[mylist])

预先感谢您的回答!

tomorrow065 回答:如何从Yaml生成的词典动态打印信息?

好的。我找到了一个简单的解决方案:

strcpy( doubled + strlen( doubled ),doubled );

这段代码将带给我“ host1,host2”,并且还能够动态处理。

如果您有更清洁的解决方案,请告诉我。 预先感谢!

本文链接:https://www.f2er.com/3168485.html

大家都在问