PyYAML 将字符串解释为时间戳

use*_*446 2 python pyyaml

看起来 PyYAML 将字符串 10:01 解释为以秒为单位的持续时间:

import yaml
>>> yaml.load("time: 10:01")
{'time': 601}
Run Code Online (Sandbox Code Playgroud)

官方文档没有反映:PyYAML 文档

任何建议如何将 10:01 读作字符串?

lar*_*sks 5

把它放在引号中:

>>> import yaml
>>> yaml.load('time: "10:01"')
{'time': '10:01'}
Run Code Online (Sandbox Code Playgroud)

这告诉 YAML 它是一个文字字符串,并禁止将其视为数值的尝试。

  • 确实如此,但这是一种解决方法,仅适用于可以编辑以“修复”YAML 的小文件。 (2认同)