如何在python中舍入总位数(包括整数部分)而不是固定数字?

时间:2013-04-22 16:23:18

标签: python rounding digits

我想知道是否有任何简单的方法可以将双数字舍入为python中的总数字? 例如,我想要总共3个数字,所以 我希望1.523为1.52,23.45为23.5,108,9为109

非常感谢

1 个答案:

答案 0 :(得分:3)

sround = lambda x,d: round(x,d - int(math.ceil(math.log10(abs(x)))))

sround(1.2345, 3) # 1.23
sround(12345.67, 3) # 12300.0
sround(-.01234, 1) # -0.01
sround(199, 1) # 200.0