YAML特殊字符处理:需要注意的符号

63 0

YAML 是一种以缩进表示层级的数据序列化格式,名字是“YAML Ain't Markup Language”的递归缩写。下面重点说明需要注意的符号。

YAML特殊字符处理

需要加引号的特殊字符:开头的 @ ` ! & * > | % #,以及值中的“: ”和“ #”。单引号中不处理转义,双引号中支持 \n 等转义。

示例

输入:

debug: false
ratio: 0.75

YAML 转 JSON结果:

{
  "debug": false,
  "ratio": 0.75
}

说明:用 YAML 1.1 解析器(PyYAML safe_load)解析后输出为 JSON。

中文的处理

YAML 中可以直接写中文,文件使用 UTF-8 编码即可;含冒号、井号的中文句子要加引号,例如 title: "注意:不要修改"。

常见报错

  • found character '\t' that cannot start any token:用了 Tab 缩进
  • mapping values are not allowed here:冒号后缺少空格或值里有未加引号的冒号
  • did not find expected key:缩进不一致
  • could not determine a constructor for the tag:用 safe_load 加载了带自定义标签的内容

本站的YAML/JSON互转工具可以直接处理,计算在浏览器本地完成,适合快速核对结果。

常见问题

【YAML 和 JSON 能互转吗?】可以,YAML 1.2 是 JSON 的超集,但注释和锚点转换为 JSON 后会丢失。

【多行字符串怎么写?】用 | 保留换行,用 > 把换行折叠成空格。

【YAML 文件扩展名是 .yml 还是 .yaml?】两者都可以,官方推荐 .yaml。

文中示例可以在本站对应工具中验证;处理密码、证件号等敏感数据时,请注意保护隐私。

署名:123问编辑部 · 最近修订:2026-11-11 · 已按编辑与审核说明检查;内容仅供参考,不构成医疗、法律或投资建议。发现错误可查看纠错方式。

标签: 文本处理

抱歉,评论功能暂时关闭!