【问题标题】:Define YAML Mapping Recursively递归定义 YAML 映射
【发布时间】:2021-10-22 08:51:32
【问题描述】:

是否有一种简单的方法可以在 yaml 中定义映射,使值本身在 yaml 中定义。例如

alice:
  name: Alice

bob:
  manager: *alice 

因此映射到bobmangager 键的值是alice 对象,而不是字符串。这样一旦文件被解析,我就可以做类似的事情

>>> data = yaml.load(file_path)
>>> alice, bob = data["alice"], data["bob"]
>>> bob.manager is alice
True

【问题讨论】:

    标签: yaml pyyaml ruamel.yaml


    【解决方案1】:

    你只需要给你想要引用的对象一个锚点:

    alice: &alice
      name: Alice
    
    bob:
      manager: *alice 
    

    【讨论】:

      猜你喜欢
      • 2011-07-24
      • 1970-01-01
      • 2013-10-31
      • 1970-01-01
      • 1970-01-01
      • 2018-10-04
      • 2020-11-01
      • 2021-08-13
      • 1970-01-01
      相关资源
      最近更新 更多