我正在使用 pyyaml 从 python 字典输出 yaml 文件,我想知道如何在将 float 写入文件时设置精度或输出格式。
我如何创建 yaml.dumper 来处理这个问题?
最佳答案
根据 http://pyyaml.org/browser/pyyaml/trunk/lib/yaml/representer.py pyyaml
在转储 float 时使用 repr()
的规范字符串表示格式。更准确的说,将 float 转换为字符串的主要代码是
# If data is a finite float and not nan
value = unicode(repr(data)).lower()
如果您想要不同的东西,看来您必须自己对 float 进行字符串转换。您可以在程序中提前将 float 转换为字符串,或者编写您自己的 Representer
类来初始化 yaml.dumper.Dumper
。
关于Python yaml 输出 - 浮点精度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22261103/