Yaml歧义;缩进空间和空节点
我写道:Yaml歧义;缩进空间和空节点,yaml,snakeyaml,Yaml,Snakeyaml,我写道: a: -b -c 解析器将其理解为: !!map { ? !!str "a" : !!seq [ !!str "b", !!str "c" ] } 但我的意思是: !!map { ? !!str "a" : !!null "" } !!seq [ !!str "b", !!str "c" ] 说明书上说: 所使用的“-”、“?”和“:”字符 表示块集合项的步骤如下: 被人们认为是社会的一部分 缩进。这是在一个安全的平台上处理
a:
-b
-c
解析器将其理解为:
!!map {
? !!str "a"
: !!seq [
!!str "b",
!!str "c"
]
}
但我的意思是:
!!map {
? !!str "a"
: !!null ""
}
!!seq [
!!str "b",
!!str "c"
]
说明书上说:
所使用的“-”、“?”和“:”字符
表示块集合项的步骤如下:
被人们认为是社会的一部分
缩进。这是在一个安全的平台上处理的
相关部门根据具体情况进行分析
制作
那么这两种解释都是允许的?若并没有,你们能指出规范中阻止它的部分吗
取决于“相关产品的个案基础”?什么是“相关产品”?试试这个:
- a:
- b
- c
a:
- b
- c
-a:
-b
-c
%YAML 1.1
---
!!序号[
!!地图{
?!!str“a”
:!!空“空”,
},
!!str“b”,
!!str“c”,
]
...
PyYAML 3.11无法解析您的示例 试试这个: - a: - b - c
a:
- b
- c
您希望从整个文档中得到什么样的数据结构?这个问题是关于yaml规范中感知到的模糊性。我期望代码标记为“但我的意思是”。如果我在-b和-c前面加上空格,它将解析为OK。要回答的问题是:那么这两种解释都是允许的?若并没有,你们能指出规范中阻止它的部分吗?什么是“相关产品”?