首页 > 解决方案 > 向上舍入浮动字段

问题描述

我正在尝试在 Odoo 10 中获得一个浮点字段以四舍五入到下一个数字。我正在按房间长度计算房间宽度

@api.onchange('roomwidth')
    def _onchange_roll_required(self):
        self.rolls_required = (self.roomwidth or 1) / (self.carpet_width or 1)

地毯宽度为 6,因此 13x9 的房间的宽度为 2.17。我需要这个 2.17 是 3,所以我需要四舍五入到下一个数字。我使用了下面的 3 位数字,但从未四舍五入

rolls_required = fields.Float("Rolls Required",digits=(12,3))

标签: pythonpython-2.7

解决方案


使用内置的 round() 函数。

前任 :

a = 3.93

print(round(a, 0)) // 4.0

舍入函数需要 2 个参数,第二个是要舍入的数字

编辑 :

哦 !对于那个很抱歉 !在这里,试试这个:

a = 2.17
def rnd(a):
    if((a+1)-a >= 0.5):
        return int(a+1)
    else:
        return round(a, 0)
print(rnd(a)) // 3

推荐阅读