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