YAML中的数据结构是什么?
我试图使最干净的YAML数据结构成为可能(所谓干净,我指的是最少的无关标记) 我试图创建的是一个YAML中的数据结构是什么?,yaml,Yaml,我试图使最干净的YAML数据结构成为可能(所谓干净,我指的是最少的无关标记) 我试图创建的是一个节的列表,其中每个节本身就是一个不同类型对象的列表 在JSON中,这看起来像 { "sections": [ [ {"p": "Words"} ], [ { "ul": "more words", "p": "other&q
节的列表,其中每个节本身就是一个不同类型对象的列表
在JSON中,这看起来像
{
"sections": [
[
{"p": "Words"}
],
[
{
"ul": "more words",
"p": "other"
}
]
]
}
这就是我目前在YAML的情况:
sections:
-
- p: 'Test words.'
- ul:
- "Words"
- "More words"
-
- p: "Other words"
这些破折号把我弄糊涂了
在上面的示例中,p
和ul
是否都需要破折号(作为名称对象的一部分)或者只需要第一个破折号?
i、 这在功能上是一样的吗
sections:
-
- p: 'Test words.'
ul:
- "Words"
- "More words"
此外,后面没有内容的破折号(如第节下的第一个破折号)表示什么
您的JSON示例:
{
"sections": [
[
{"p": "Words"}
],
[
{
"ul": "more words",
"p": "other"
}
]
]
}
在YAML中可以这样写:
---
sections:
- - p: Words
- - p: other
ul: more words
有两个连字符(破折号),因为它是一个嵌套序列(又名列表,数组)
在YAML中,每个序列项都以连字符开头
JSON示例也是有效的YAML,因为JSON是YAML的子集。
YAML是作为XML的替代品而发明的,大约与JSON是独立发明的时间相同。
当YAML发明者意识到JSON时,他们修改了语法以与1.2版兼容,但它已经支持类似于JSON的紧凑样式
示例也可以这样编写:
---
sections:
- [
{p: Words}
]
- [
{
ul: more words,
p: other,
}
]
您在问为什么YAML语法是这样的?那可能是问错地方了。这是一个问编程问题的地方。YAML语法就是这样定义的,并为此编写了解析器。也许最好先熟悉基本语法和术语。有和。例如,我不知道你所说的“标识符”是什么意思。@tinita谢谢,我根据你的反馈调整了这个问题。
---
sections:
- [
{p: Words}
]
- [
{
ul: more words,
p: other,
}
]