前段时间我们学习了浮点数的运算。发现中的道道还是很多的,今天我们学习更多的道道。
首先学习对结果的处理,我们对浮点数的处理,一个是有效数字的位数,也就是小数点后面有几位有效数字。
另一个是在取舍的时候,产生的四舍五入问题。
如果一个数字是这样的。
a=1.111222345
a=('%.2f'% a)
print(a)
------------------
>>> print(a)
1.11
>>>
结果是a =1.11
我们可以看出,这个格式的意思是
%.xf的意思就是准备输出的样板,示例,属于浮点数,最后的f来表明。
然后,x就是准备保留的小数位数。
%就是一个通配符的意思。可能很多人对通配符感到很神秘,其实这个就是一个代号,代表我们这个a.
这样理解后,如果我们需要4位,我们就是(%.4f %a)就好了。如果这个数值是b.我们就用(%.4f %b)
这样,我们就弄明白了有效数字的取舍问题,
下面我们看看四舍五入问题。
b =9.3456789
b =(%.3f %b)
print(b)
---------------
>>> print(b)
9.3457
>>>
另外,python中还支持这样用
a=1.111222345
a=format(a,'.2f')
print(a)
---------------------------------
>>> a=format(a,'.2f')
>>> print(a)
1.11
>>>
这种方式使用起来更是直接。
在使用的时候,发现一旦指定了一个格式后,再指定另一个格式就会出现错误。
a=1.111222345
a=format(a,'.2f')
a=format(a,'.3f')
print(a)
我们今天学习了2种保留小数点的方式,一个是(%.xf %a).另一个是fomat(a,'.2f')
这两种使用起来都是一样的方便。
另外还有一种表示的方法。round()
这个函数的在python2.x python3.x当中的使用方法有不同之处。
但是先记住一句话,就好:4舍6入5留双.这个算法要要优于4舍5入