Курс Python → Округление банкира в Python

При работе с дробными числами в Python, рекомендуется использовать метод округления, известный как «округление банкира». Этот способ округления дробей .5 соответствует стандарту IEEE 754 и обеспечивает более точные результаты. В то время как многие люди знакомы с другим методом округления (округление от нуля), использование округления банкира может быть не так широко распространено. Некоторые популярные языки программирования, такие как JavaScript, Java, C/C++, Ruby и Rust, также не используют банковское округление.

В Python округление с использованием функции round() может вызвать некоторые затруднения из-за различий в методах округления. Для более подробной информации и рекомендаций по использованию округления в Python, рекомендуется обратиться к документации по функции round() или обратиться к сообществу разработчиков на платформе Stack Overflow.

Примером использования округления банкира в Python может быть функция get_middle(), которая возвращает средний элемент списка. Например, если передать список [1], функция вернет 1, так как индекс вычисляется как round(0.5) — 1 = 0 — 1 = -1, что соответствует последнему элементу в списке.


def get_middle(lst):
    mid_index = round(len(lst) / 2) - 1
    return lst[mid_index]
    
print(get_middle([1, 2, 3]))  # Вернет 2

Использование округления банкира в Python поможет избежать путаницы при округлении дробных чисел и обеспечит более точные результаты, особенно при работе с критически важными вычислениями.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Метод __ilshift__ для битового сдвига влево
  2. Функция enumerate в Python
  3. Классы данных в Python
  4. Сравнение строк в Python
  5. Работа с CSV файлами в Python
  6. Создание пар из последовательностей
  7. Генераторы в Python
  8. Работа с timedelta в Python
  9. Пропуск начальных строк с помощью dropwhile()
  10. Преобразование букв в нижний регистр
  11. Импорт модулей в Python 3.12
  12. Условные выражения в Python
  13. Непрерывная проверка в Python
  14. Списковые включения в Python
  15. Метод append() для списка
  16. Поиск наиболее частого элемента
  17. Работа с Event() в threading
  18. Работа с itertools
  19. Поиск элементов BeautifulSoup
  20. Python 3.12: Псевдонимы типов
  21. Вложенные функции в Python
  22. Проверка условий: all и any
  23. Обновление шаблона base.html
  24. Отделение звука от видео
  25. Логирование с Logzero
  26. Объединение кортежей в Python
  27. Расчет времени выполнения
  28. Избегайте двойного подчеркивания
  29. Вывод сложных структур данных с помощью pprint
  30. Извлечение аудио из видео
  31. Вызов внешних программ в Python с помощью sh
  32. Логирование с Loguru
  33. Получение срезов итераторов
  34. Antigravity модуль
  35. Работа с дробями в Python
  36. Форматирование строк в Python
  37. Оператор Walrus в Python 3.8
  38. Участие в сообществе @selectel
  39. Разделение строки на подстроки в Python
  40. Работа с процессами в Python
  41. Solidity для DeFi Ethereum
  42. Сортировка элементов в Python
  43. Работа с географическими данными в Python
  44. Именованные срезы в Python
  45. Удаление символа из строки
  46. Defaultdict в Python
  47. Безопасный доступ к значениям словаря
  48. UserString в Python

Marketello читают маркетологи из крутых компаний