TGViewer
Zen of Python Zen of Python @zen_of_python · 18.8K subscribers
Post #2620 5.19K
​math.fsum: получаем сумму float без «осложнений»

Тип float печально известен своей неточностью. Когда вы складываете два числа, результат может содержать небольшую ошибку. И чем больше чисел, тем выше ошибка:

sum([0.8] * 1_000)
# 799.9999999999887 вместо 800

Если вы хотите устранить это недоразумение, используйте math.fsum():

import math

math.fsum([.8] * 1_000)
# 800.0

#math
  • 👍 20
  • ❤ 1
More from @zen_of_python
  1. Oct 10, 2026Post #5048
  2. Oct 10, 2026Showboat и Rodney помогают показать работу ИИ-агента Саймон Уиллисон собирает демонстрации…
  3. Oct 10, 2026Почему max_workers не ограничивает очередь задач ThreadPoolExecutor(max_workers=8) разреша…
  4. Oct 10, 2026Как измерять время async-функции через декоратор Обычная обёртка может вызвать async-функц…
  5. Oct 10, 2026Чего не проверяет runtime_checkable Protocol Protocol позволяет описать небольшой интерфей…
  6. Oct 9, 2026Как добавить MCP-сервер в Django-проект django-mcpz позволяет зарегистрировать Python-функ…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →