Я хотел бы создать функцию f(x : float, up : bool)
с этим вводом/выводом:округлить/вниз поплавок до 2 знаков после запятой
# 2 decimals part rounded up (up = True)
f(142.452, True) = 142.46
f(142.449, True) = 142.45
# 2 decimals part rounded down (up = False)
f(142.452, False) = 142.45
f(142.449, False) = 142.44
Теперь я знаю о round
встроенной функции Python, но он всегда будет круглым 142.449
вверх , чего я не хочу.
Есть ли способ сделать это в более приятном питоническом способе, чем делать кучу поплавковых сравнений с эпсилонцами (подвержен ошибкам)?
Это похоже на то, что он может работать лучше, чем операция с строкой. –
Или, может быть, использовать 'ceil' и' floor' после перемещения десятичного числа –