Дробная часть числа Python
Перепробовал уже кучу всего, но в любом случае вместо многих чисел, например 0,32 выводит 0,32000000000000006
Пробовал
math.modf(x)
whole = int(n // 1)
dec = x - int(x)
x%1
Ответы (1 шт):
Автор решения: Xander
→ Ссылка
Там, где важно идеально точно работать с десятичными дробями (например, в финансовых вычислениях), никогда не используют числа с плавающей точкой - для этого есть специальный модуль decimal:
from decimal import Decimal
x = 1.32
d = Decimal('1.32')
print( x % 1 ) // число с плавающей точкой даёт неточный результат
print( d % 1 ) // число в формате Decimal даёт точный результат