python中format函数与round函数的区别

 更新时间:2022年01月14日 14:12:58   作者:lishuaigell  
大家好,本篇文章主要讲的是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中format函数与round函数的区别的文章就介绍到这了,更多相关python format和round函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python基础教程之Turtle绘制图形详解

    Python基础教程之Turtle绘制图形详解

    在Python中,绘图是一个非常有趣的领域,其中比较流行的绘图库就有 Turtle,所以本文就来讲讲如何在Python中使用它来创建和修改图形,需要的可以参考一下
    2023-06-06
  • python pygame实现打砖块游戏

    python pygame实现打砖块游戏

    这篇文章主要为大家详细介绍了python pygame实现打砖块游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • pandas如何将表中的字符串转成数值型

    pandas如何将表中的字符串转成数值型

    在用pd.read_csv读数据时,将要转换数据类型的列名和类型名构成字典,传给dtype,怎么转换呢,下面小编给大家分享下pandas将表中的字符串转成数值型,感兴趣的朋友一起看看吧
    2023-02-02
  • 用Python识别人脸,人种等各种信息

    用Python识别人脸,人种等各种信息

    这篇文章主要介绍了用Python识别人脸,人种等各种信息,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • 浅谈TensorFlow之稀疏张量表示

    浅谈TensorFlow之稀疏张量表示

    这篇文章主要介绍了浅谈TensorFlow之稀疏张量表示,具有很好的参考就价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • python使用if语句实现一个猜拳游戏详解

    python使用if语句实现一个猜拳游戏详解

    这篇文章主要介绍了python使用if语句实现一个猜拳游戏详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现

    Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现

    这篇文章主要介绍了Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现 ,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • 获取CSDN文章内容并转换为markdown文本的python

    获取CSDN文章内容并转换为markdown文本的python

    这篇文章主要介绍了自己写的小工具,可以直接获取csdn文章并转换为markdown格式,需要的朋友可以参考下
    2020-09-09
  • 详解Python调试神器之PySnooper

    详解Python调试神器之PySnooper

    在程序开发过程中,代码的运行往往会和我们预期的结果有所差别。于是,我们需要清楚代码运行过程中到底发生了什么?代码哪些模块运行了,哪些模块没有运行?输出的局部变量是什么样的?PySnooper,能够大大减少调试过程中的工作量
    2021-11-11
  • python解决No module named pip问题两种方法

    python解决No module named pip问题两种方法

    当出现No module named pip错误时,表明您的Python环境缺少pip模块,下面这篇文章主要给大家介绍了关于python解决No module named pip问题的两种方法,需要的朋友可以参考下
    2024-01-01

最新评论