Округление до произвольного интервала в Python
В Python встроенная функция round() обычно используется для округления числовых значений. Однако он работает по схеме округления по основанию 10, которая не всегда подходит для конкретных требований. Например, если вы хотите округлить числа до ближайшего числа, кратного 5, стандартная функция round() не подходит.
Чтобы решить эту проблему, можно создать пользовательскую функцию, которая округляет значения до определенного интервала. . Например, чтобы округлить числа до ближайшего числа, кратного 5, мы можем определить следующую функцию:
def myround(x, base=5):
return base * round(x / base)
Эта функция принимает два параметра: x — число, которое нужно округлить, а base — это пользовательский интервал округления (по умолчанию 5). Функция сначала делит x по основанию, чтобы получить целочисленное частное. Это гарантирует, что результат будет округлен до ближайшего числа, кратного основанию. Наконец, результат умножается на основание, чтобы компенсировать первоначальное деление.
Вот пример того, как работает функция myround():
print(myround(10)) # 10
print(myround(12)) # 10
print(myround(13)) # 15
print(myround(14)) # 15
print(myround(16)) # 15
print(myround(18)) # 20
Как показано в выводе, функция округляет заданные числа до ближайшего числа, кратного 5. Такое пользовательское поведение округления позволяет адаптировать процесс округления к конкретным требованиям, не полагаясь на о стандартной функциональности функции round().
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3