1

我在 yaml 中有一个类别层次结构。没有值,只有键。如何制作重复节点?例如,我想要AppsEntertainment类别和Tech类别中。通常重复的节点被标记为值,如下例所示:

hr:
  - Mark McGwire
  # Following node labeled SS
  - &SS Sammy Sosa
rbi:
  - *SS # Subsequent occurrence
  - Ken Griffey

但就我而言,我只有键,没有值。我尝试了以下方法,但是当我使用将其加载到 python 中时,pyyaml我得到了一个包含App: NoneApp.

Entertainment:
    Music:
        Country:
        Hip hop:
        Pop:
        Rock:
        Alternative:
    &Apps Apps:
        Games:
        Productivity:
        Travel:
        Finance:
        Lifestyle:
Goods:
    Tech:
        Visual:
            Projectors:
            TVs:
        Phones:
            Smart phones:
            Feature phones:
        *Apps:
4

1 回答 1

1

AFAIK 锚可以应用于节点(即数据、序列和映射),但不一定应用于节点内的键。所以Appskey 不能被锚定,但Apps包含的映射是公平的游戏。这对我有用:

Entertainment:
    Music:
        Country:
        Western:
    Apps: &AppsKeys
        Games:
        Travel:
Goods:
    Tech:
        Visual:
        Phones:
        Apps: *AppsKeys

我想使用Apps关键字有点多余。可能还有一些方法可以将锚点应用于我不知道的单个键。但我的猜测是这是不可能的,因为它不代表一个基本单位(又名节点)。

于 2013-09-05T05:16:52.097 回答