请告诉我如何在Python中汇总数字。
如果我有1.47,如何将其四舍五入? 或者,如果我有10.13,如何将其四舍五入到11?
round(round(1.47, 1))
的答案是正确的,但还有其他方法可以对这些数字进行舍入吗?
答案 0 :(得分:3)
math
模块中有一个名为ceil
的函数。
>>> import math
>>> print math.ceil(1.47)
2.0
如果你想要一个整数,
>>> import math
>>> print int(math.ceil(1.47))
2
答案 1 :(得分:2)
显然使用math.ceil
,但无论如何这里都是一个有趣的选择:
>>> [-(-x//1) for x in 1.47, 10.13, 2.0]
[2.0, 11.0, 2.0]
更短/更有趣的一个:
>>> [0--x//1 for x in 1.47, 10.13, 2.0]
[2.0, 11.0, 2.0]
或--0-- x//1
,请参阅下面的@ MarkDickinson评论。
如果你想要一个int(...)
,请申请int
,我会保留这些,因为它们是为了展示"浮点数的整数除法"并保持其可见性。
答案 2 :(得分:0)
您需要使用math
天花板功能,即ceil
:
import math
print math.ceil(1.47)
将产生2.0