目录

python-浮点数取整

python-浮点数取整

1.向下取整–int()  直接截去小数点后部分

>>> int(454)
454
>>> int(454.323)
454
>>> int(454.8723)
454
>>> int(-454.8723)
-454
>>> int(-454.1723)
-454

2.四舍五入–round() 返回浮点数四舍五入的值。ps:python2和python3中不同。

python2中,标准的四舍五入,对四舍五入后的值int()取整即可。

>>> round(4)
4.0
>>> round(43.5)
44.0
>>> round(43.6)
44.0
>>> round(43.4343434)
43.0
>>> round(43.656564)
44.0
>>> round(-43.656564)
-44.0

python3中对该函数做了改动,python3中遵循 四舍六入五均分 ,如果小数点后的值是5,根据小数点前的奇偶性来判断,如果是偶数则舍,如果是奇数则进1。

>>> round(4343)
4343
>>> round(45.5)
46
>>> round(41.5)
42
>>> round(44.5)
44
>>> round(42.5)
42
>>> round(42.634)
43

如果四舍五入为小数位,则情况随机

>>> round(43.43534,2)
43.44
>>> round(43.44534,2)
43.45
>>> round(43.445,2)
43.45
>>> round(43.455,2)
43.45
>>> round(43.435,2)
43.44

3.向上取整–math模块中的ceil方法

import math

math.ceil(454.2334)

455

math.ceil(45.00000334)

46

4.分别取整数部分和小数部分

(1)math模块的modf()方法。该方法返回一个小数和整数部分组成的元组。

math.modf(545)

(0.0, 545.0)

math.modf(545.4334)

(0.433400000000006, 545.0)

math.modf(545.5)

(0.5, 545.0)

math.modf(545.0345)

(0.03449999999997999, 545.0)

将小数部分与0.5比较,进行取舍。对整数部分int()得到整数。

(2)split以’.‘分割浮点数。