我想解析包含"Stellaris“本地化的yaml文件。但一直以来我都有一个错误
"yaml mapping values are not allowed here"我用pyyaml。主要的问题是,游戏中的所有本地化文件都有这样的行:
trait_ruler_immortal:0 "Immortal"但在yaml文档和论坛中,我可以看到,我们必须在冒号之后创建“空格”。我不明白这个"0“符号是什么意思。有趣的是,游戏在解析这些文件时没有任何问题。也许这是特别的yaml格式?
编辑:
更多代码: l_english: crisis.2087.desc_psionic_synth:0“一个小数目”EXTSYNTH_DIVINE_SPARK:“神圣火花”EXTSYNTH_START_AT_3:0§从这个物种开始在技能等级3§!
发布于 2020-07-10 19:37:26
根据规范,这是无效的YAML。很可能是Stellaris在将文件交给YAML加载器之前对其进行了一些预处理。我们只能猜到这里发生了什么。
最好的解析方法可能是将其加载到字符串中,然后执行
input.replace(":0 ", ": ")在解析之前。
https://stackoverflow.com/questions/62840432
复制相似问题