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