Найти - Пользователи
Полная версия: Вопрос по округлению Decimal
Начало » Python для новичков » Вопрос по округлению Decimal
1
Ess
Здравствуйте, подскажите, для модуля decimal есть метод округления дробной части через метод quantize
например округление до сотых
 Decimal("1234.7890").quantize(Decimal("1.00")) #1234.78

а есть ли метод в питоне округления не дробной, а целой части???, т.е. например у меня есть число 1234 и я хочу его округлить
до тысяч т.е. результат должен быть 1000,
если округлить его до сотен то результат будет 1200
до десяток -> 1230 итд

Заранее спасибо!
ZerG
 a = 12345
def rd(number, digits):
    factor = 10**digits
    rounded_number = round(number / factor) * factor
    res = int(rounded_number) if rounded_number % 1 == 0 else rounded_number
    print(res)
rd(a, 1)
rd(a, 2)
rd(a, 3)
rd(a, 4)

 12340
12300
12000
10000

Ess
Здравствуйте, ZerG. Спасибо за ответ.
Я правильно понимаю, что у питона нет родного метода?

(У меня собственный метод то есть округления целого числа, я просто хотел узнать если свой метод у питона что бы не изобретать велосипед), но большое вам спасибо вам за ваши труды.
ZerG
встроенного нет
А у какого языка он есть?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB