如何使用ruamel.yaml添加节点

时间:2017-01-15 18:35:12

标签: python pyyaml ruamel.yaml

我尝试在example之后添加一个新节点,但是:

myitems = ruamel.yaml.load(inp, ruamel.yaml.RoundTripLoader)
myitems['abc'].append('test')

给了我一个错误:

Traceback (most recent call last):
  File "item_updater.py", line 148, in <module>
    myitems['wohnung'].append('test')
AttributeError: 'CommentedMap' object has no attribute 'append'

我正在使用ruamel.yaml v0.13.7

我做错了什么?

1 个答案:

答案 0 :(得分:0)

您的错误并非来自您指定的示例,例如示例的inp中没有wohnung显示在您的错误中。

你可能忘记了-某个地方:

wohnung:
   a: 1

而不是:

wohnung:
- a: 1

仅限后者,您可以使用myitems['wohnung'].append('test')附加。

该示例有效,但如果没有显示您的真实YAML输入,则很难看出错误的确切原因。