>>> format(0.1, '.17f')
'0.10000000000000001'
>>> from decimal import Decimal
>>> Decimal(1) / Decimal(3)
Decimal('0.3333333333333333333333333333')
>>> (Decimal(1) / Decimal(3)) * Decimal(3) == Decimal(1)
False
>>> from fractions import Fraction
>>> (Fraction(1) / Fraction(3)) * Fraction(3) == Fraction(1)
True
Для точніших результатів є клас
Decimal
, але і його іноді не вистачає. Тоді для ідеальних обчислень використовуємо клас Fraction
, який працює з раціональними дробами.#Decimal #Fraction // #practice // Python