python保留若干位小数 format与round的使用区别
更新时间:2023年08月23日 08:38:08 作者:愿此后再无WA
这篇文章主要介绍了python保留若干位小数 format与round的使用区别,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
python保留若干位小数 format与round区别
在对数据进行处理时我们常常会用到format与round函数。
二者都能保留若干位小数,但在处理过程上稍有不同。
不同之处
- 返回类型不同:format函数进行格式化后返回结果的数据类型是str字符串,round函数返回结果的数据类型是float浮点型
- 进位不同:保留若干位小数时,format遵循的是四舍五入原则,而round并不遵循该原则,round进位原则为四舍六入次偶进。
- 位数保留不同:规定如保留6位小数,format函数输出结果小数点后面就是保留6位小数,而round函数稍微灵活点,它会把后面0结尾的小数都去掉,即保留非0部分。
- 功能不同:round函数主要作用于浮点型数据用于保留若干小数,format函数不仅仅能够保留若干小数,它主要功能是格式化字符串,自定义输出字符串。
round函数
进位原则
何为四舍六入次偶进?看最后一位数,如果最后一位数小于等于4那么舍去,如果最后一位数大于等于6则进一位;如果最后一位数是5时,就要分情况讨论:如果倒数第二位是偶数则进一位,奇数的话舍去。
示例
>>> round(2.674,2) # 参数为2,则保留两位小数,看第三位小数,如果小于等于4则舍去 2.67 >>> round(2.645,2) # 等于5的话看倒数第二位,4是偶数, 次偶进,则进一位 2.65 >>> round(2.655,2) # 5是奇数,次偶进,所以舍去 2.65 >>> round(2.675,2) 2.67 >>> round(2.685,2) 2.69 >>> round(2.695,2) 2.69 >>> round(2.676,2) # 第三位小数大于等于6,所以进一位 2.68 >>> type(round(2.674,2)) # 结果是浮点型 <class 'float'> >>> round(3.677,6) # 当规定保留小数超过实际小数位数时,仅保留非零部分 3.677
format函数
format函数功能强大,书写格式多种多样,我们结合示例具体说明一下运算过程。
示例
>>> format('2.674','.2f') # 使用这种方法保留小数时,第一个参数不可是字符串类型
Traceback (most recent call last):
File "<pyshell#29>", line 1, in <module>
format('2.674','.2f')
ValueError: Unknown format code 'f' for object of type 'str'
>>> format(2.674,'.2f') # 正确格式 '.2f'表示保留小数点后两位
'2.67'
>>> format(3.677,'.6f') # 规定保留几位小数就会保留几位小数
'3.677000'
>>> print("lishuaige就是%.3f啊" % 6.66555) # 定点数字格式化输出
lishuaige就是6.666啊
>>> print("lishuaige就是{:.3f}啊".format(6.66555))
lishuaige就是6.666啊python常用输出保留几位小数
保留两位小数(四舍五入)
a = 1.086
#方法一
print("%.2f" %a)
#方法二
print("{:.2f}".format(a))
#方法三
a1 = round(a,2)
print(a1)总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Python中用psycopg2模块操作PostgreSQL方法
python可以操作多种数据库,本篇文章给大家介绍了用psycopg2模块操作PostgreSQL方法,一起来学习下。2017-11-11
三分钟教会你用Python+OpenCV批量裁剪xml格式标注的图片
最近学习网络在线课程的过程中,为了方便课后复习,使用手机截取了大量的图片,下面这篇文章主要给大家介绍了如何通过三分钟教会你用Python+OpenCV批量裁剪xml格式标注图片的相关资料,需要的朋友可以参考下2022-01-01
PIL.Image.open和cv2.imread的比较与相互转换的方法
这篇文章主要介绍了PIL.Image.open和cv2.imread的比较与相互转换的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-06-06
Python fire模块(最简化命令行生成工具)的使用教程详解
Python Fire是谷歌开源的一个第三方库,用于从任何Python对象自动生成命令行接口(CLI),可用于如快速拓展成命令行等形式。本文将通过实例为大家详细说说fire模块的使用,感兴趣的可以了解一下2022-10-10


最新评论