Слово of a float

Я нашел два способа использования этажей в Python:

3.1415 // 1

и

import math
math.floor(3.1415)

Проблема с первым подходом состоит в том, что он возвращает число с плавающей запятой (а именно 3.0 ). Второй подход кажется неуклюжим и слишком долгим.

Есть ли альтернативные решения для заливки полов на Python?

39
задан Martin Vseticka 8 August 2016 в 07:45
поделиться

1 ответ

from math import floor


def ff(num, step=0):
    if not step:
        return floor(num)
    if step < 0:
        mplr = 10 ** (step * -1)
        return floor(num / mplr) * mplr
    ncnt = step
    if 1 > step > 0:
        ndec, ncnt = .0101, 1
        while ndec > step:
            ndec *= .1
            ncnt += 1
    mplr = 10 ** ncnt
    return round(floor(num * mplr) / mplr, ncnt)

можно использовать положительные / отрицательные числа и плавающие точки.1.01.001...

0
ответ дан 27 November 2019 в 02:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: