Python Разработка | Web Backend, Парсинг & Telegram Bots. Пайтон программирование с нуля. Django, FastAPI и SQL. Уроки для начинающих и IT карьера. Coding.

@BookPython
Фото Нативные значения float в Python используют аппаратные возможности вашего компьютера, поэтому любое значение внутренне представлено в виде двоичной дроби. Это означает, что в большинстве случаев вы работаете с приближениями, а не с точными значениями: In : format(0.1, '.17f') Out: '0.10000000000000001' Модуль decimal позволяет использовать десятичную арифметику с произвольной точностью: In : Decimal(1) / Decimal(3) Out: Decimal('0.3333333333333333333333333333') Однако и этого может быть недостаточно: In [61]: Decimal(1) / Decimal(3) * Decimal(3) == Decimal(1) Out[61]: False Для точных вычислений можно использовать fractions, где любое число хранится в виде рационального: In : Fraction(1) / Fraction(3) * Fraction(3) == Fraction(1) Out: True Очевидным ограничением остается то, что иррациональные числа (например, π) все равно будут представлены только в приближенной форме. 👉 @BookPython
Если у вас установлено приложение,
вы можете сразу перейти в канал