Python 如何找到大浮点数的下限?

Python 如何找到大浮点数的下限?,python,floor,Python,Floor,如何在python中正确地找到floor(a*n),其中n是一个非常大的浮点数 我用Decimal模块进行了尝试,但是 Deciaml(1.1) * Decimal(123456789123456789123456789) 它没有给出正确的答案。您不能使用浮点来构造十进制,精度已经丢失。使用字符串初始化它: >>> Decimal(1.1) * Decimal(123456789123456789123456789) Decimal('13580246803580247900

如何在python中正确地找到
floor(a*n)
,其中
n
是一个非常大的浮点数

我用
Decimal
模块进行了尝试,但是

Deciaml(1.1) * Decimal(123456789123456789123456789)

它没有给出正确的答案。

您不能使用浮点来构造十进制,精度已经丢失。使用字符串初始化它:

>>> Decimal(1.1) * Decimal(123456789123456789123456789)
Decimal('135802468035802479000968054.4')
>>> Decimal('1.1') * Decimal(123456789123456789123456789)
Decimal('135802468035802468035802467.9')

不能使用浮点来构造小数,精度已经丢失。使用字符串初始化它:

>>> Decimal(1.1) * Decimal(123456789123456789123456789)
Decimal('135802468035802479000968054.4')
>>> Decimal('1.1') * Decimal(123456789123456789123456789)
Decimal('135802468035802468035802467.9')