我正在做的是创建几个像下面这样的文字块,并将它们放在一个列表中。
literal1: |
line
of
text and stuff
literal2: |
...
现在我无法弄清楚的部分是将它们列在列表中。我想我将使用 anchor 和别名,但它们似乎不适用于文字块。
这样做不起作用
literal1: | &literal1
line
of
text and stuff
它吐出一个错误。而且我宁愿不必创建一个字典
literals: &literal1
literal1: |
....
为了这个工作。我确信有一种简单的方法可以做到这一点,但我似乎无法找到它。
最佳答案
这是你想做的吗?
literal1: &literal1 |
line
of
text and stuff
literal2: &literal2 |
another line
of text and new stuff
literals:
- *literal1
- *literal2
以下程序将打印...
['line\nof\ntext and stuff\n', 'another line\nof text and new stuff\n']
import yaml
data="""
literal1: &literal1 |
line
of
text and stuff
literal2: &literal2 |
another line
of text and new stuff
literals:
- *literal1
- *literal2
"""
pydata = yaml.load(data)
literals = pydata [ 'literals' ]
print ( type(literals), literals )
关于python - 是否可以在 YAML 中 anchor 定文字块?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24656798/