Python:如何将数字向下舍入到下一个1000

时间:2018-08-23 05:34:36

标签: python python-3.x rounding

在python中,有一个内置函数round(),
它会舍入一个这样的数字:

round(1900, -3) == 2000

有一个内置函数可以将数字向下取整,如下所示:

function(1900, -3) == 1000

3 个答案:

答案 0 :(得分:2)

您可以使用楼层划分:

def round_down(x, k=3):
    n = 10**k
    return x // n * n

res = round_down(1900)  # 1000

math.floor也可以使用,但是性能有所下降,请参阅Python integer division operator vs math.floor

答案 1 :(得分:1)

也许您可以这样尝试

import math
math.floor(1900 / 100) * 100

答案 2 :(得分:0)

GetBList() { this.ListLoader = true; var url = this.baseurl + 'api/GeneratePDF/GetList/'; this.http.get(url) .toPromise() .then((result: HttpResponse <PendingListBWise[]>) => { this.BList = result; this.ListLoader = false; }) .catch(error => { this.ListLoader = false; console.error(error); }); } 向下舍入到下一个整数

math.floor([field])向下舍入到下一个1000

也许您可以在此之后进行整数转换。

如果您喜欢使用带有exponent参数的语法,则可以定义自己的函数:

math.ceil([field]/1000)*1000