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)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • OPENAI API 微调 GPT-3 的 Ada 模型

    OPENAI API 微调 GPT-3 的 Ada 模型

    这篇文章主要为大家介绍了OPENAI API 微调 GPT-3 的 Ada 模型使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • python geopandas读取、创建shapefile文件的方法

    python geopandas读取、创建shapefile文件的方法

    shapefile是GIS中非常重要的一种数据类型,在ArcGIS中被称为要素类(Feature Class),主要包括点(point)、线(polyline)和多边形(polygon),本文重点给大家介绍python geopandas读取、创建shapefile文件的方法,需要的朋友参考下吧
    2021-06-06
  • Python3 Click模块的使用方法详解

    Python3 Click模块的使用方法详解

    这篇文章主要介绍了Python3 Click模块的使用方法详解,需要的朋友可以参考下
    2020-02-02
  • Python利用Matplotlib库实现绘制饼形图

    Python利用Matplotlib库实现绘制饼形图

    这篇文章主要为大家分享了基于python+matplotlib库的饼形图绘制,具体内容涉及一般的饼图、分裂饼图、以及环形图,感兴趣的小伙伴可以了解一下
    2022-04-04
  • 对Xpath 获取子标签下所有文本的方法详解

    对Xpath 获取子标签下所有文本的方法详解

    今天小编就为大家分享一篇对Xpath 获取子标签下所有文本的方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • 使用Python requests库发送JSON数据的POST请求步骤

    使用Python requests库发送JSON数据的POST请求步骤

    在Python这个强大的编程语言中,requests库是一个广泛使用且功能强大的HTTP请求库,发送POST请求并附带JSON数据是一个非常常见的需求,本文给大家介绍了如何用Python的requests库发送JSON数据的POST请求,需要的朋友可以参考下
    2024-06-06
  • Django 设置admin后台表和App(应用)为中文名的操作方法

    Django 设置admin后台表和App(应用)为中文名的操作方法

    这篇文章主要介绍了Django 设置admin后台表和App(应用)为中文名的操作方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • python内置模块OS 实现SHELL端文件处理器

    python内置模块OS 实现SHELL端文件处理器

    这篇文章主要介绍了python内置模块OS实现SHELL端文件处理器,文章通过围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • Python+Mysql实现登录注册完整代码示例

    Python+Mysql实现登录注册完整代码示例

    在开发中用户注册和登录是常见的功能需求,这篇文章主要给大家介绍了关于Python+Mysql实现登录注册的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-03-03
  • python 调用API接口 获取和解析 Json数据

    python 调用API接口 获取和解析 Json数据

    这篇文章主要介绍了python 如何调用API接口 获取和解析 Json数据,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-09-09

最新评论