Python - 如何提高小数的准确性?

时间:2016-06-09 12:58:50

标签: python module floating-point decimal

我正在编写一个程序,我需要传递非常精确的分数十进制表示(即精确到超过200个小数位)。然而,简单地告诉python包含更多小数位(例如,使用%.50f)通常只是在一些小数的末尾添加一堆0。

有没有办法让python准确显示分数的任意小数位数?我是否需要安装软件包/模块?

2 个答案:

答案 0 :(得分:2)

Python 2.7及更高版本可以执行以下操作,

使用from decimal import *使用python标准库中的Decimal Library并执行此操作:

from decimal import *
with localcontext() as context:
    context.prec = #your_precision_here
    print(Decimal(#calculation_here))

答案 1 :(得分:0)

检查Python附带的decimal module。它可以显示存储在float或decimal变量中的任何值的精确十进制表示。

这与显示分数的任意多个小数位不完全相同,但看看它是否符合您的需要。