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

目录
  • 前言
  • 不同之处
  • round函数
    • 进位原则
    • 示例
  • format函数
    • 示例
  • 总结

前言

在对数据进行处理时我们常常会用到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函数内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2022-01-12

Python format函数详谈

目录 Python字符串的format函数 总结 Python字符串的format函数 format()函数用来收集其后的位置参数和关键字段参数,并用他们的值填充字符串中的占位符.通常格式如下: '{pos or key : fill, align, sign, 0, width, .precision, type}'.format(para1...) 整个花括号是一个占位符,冒号前的位置或者关键字用来定位format函数的参数,冒号后面用来将该参数格式化,其中每一个都是可选项. 1.fill用

Python .format()函数使用方法详解

目录 format函数的调用 format函数及其占位符的调用格式 占位符以及参数设定 position/key fill参数 align参数 sign参数 width参数 precision参数 precision-type参数 总结 format函数的调用 format函数可以被直接调用或在print函数中以占位符实现格式化调用. 在**2.6**版本前,占位符仍和其他语言一样使用%(比如C中).但在其后的版本,format函数的占位符更改为{}(花括号). 优化的目的目前总结出了4个: 1

Python中str.format()方法的具体使用

目录 1. 术语说明 2. 简单字段名 2.1 简单字段名的说明 2.2 省略字段名 2.3 数字形式的简单字段名 2.4 变量名形式的简单字段名 2.5 简单字段名的混合使用 2.6 使用元组和字典传参 3. 复合字段名 3.1 复合字段名的说明 3.2 . 点号的使用 3.3 [] 方括号的使用 4. 转换字段 5. 格式说明符 5.1 标准格式说明符的格式 5.2 填充与对齐方式 5.3 正负号 5.4 # 号 5.5 最小宽度 5.6 分组选项 5.7 精度 5.8 类型码 5.8.1

Python中格式化format()方法详解

 Python中格式化format()方法详解 Python中格式化输出字符串使用format()函数, 字符串即类, 可以使用方法; Python是完全面向对象的语言, 任何东西都是对象; 字符串的参数使用{NUM}进行表示,0, 表示第一个参数,1, 表示第二个参数, 以后顺次递加; 使用":", 指定代表元素需要的操作, 如":.3"小数点三位, ":8"占8个字符空间等; 还可以添加特定的字母, 如: 'b' - 二进制. 将数字以2为基

Python中str.format()详解

1. str.format 的引入 在 Python 中,我们可以使用 + 来连接字符串,在简单情况下这种方式能够很好的工作.但是当我们需要进行复杂的字符串连接时,如果依然使用 + 来完成,不仅会使代码变得晦涩难懂,还会让代码变得难以维护,此时这种方式就显得力不从心了. 例如,我们想打印这样一条记录: User:John has completed Action:payment at Time:13:30:00 如果使用加号实现,会是下面这种形式: print "User:" + us

python中pylint使用方法(pylint代码检查)

一.Pylint 是什么 Pylint 是一个 Python 代码分析工具,它分析 Python 代码中的错误,查找不符合代码风格标准和有潜在问题的代码. Pylint 是一个 Python 工具,除了平常代码分析工具的作用之外,它提供了更多的功能:如检查一行代码的长度,变量名是否符合命名标准,一个声明过的接口是否被真正实现等等. Pylint 的一个很大的好处是它的高可配置性,高可定制性,并且可以很容易写小插件来添加功能. 如果运行两次 Pylint,它会同时显示出当前和上次的运行结果,从而可

python中利用zfill方法自动给数字前面补0

python中有一个zfill方法用来给字符串前面补0,非常有用 view sourceprint? n = "123" s = n.zfill(5) assert s == "00123" zfill()也可以给负数补0 n = "-123" s = n.zfill(5) assert s == "-0123" 对于纯数字,我们也可以通过格式化的方式来补0 n = 123 s = "%05d" % n a

Python中str.join()简单用法示例

本文实例讲述了Python中str.join()简单用法.分享给大家供大家参考,具体如下: Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串.其中,序列中的元素应是字符串类型. join()方法语法: str.join(sequence) 例子: >>> str='-' >>> l=['2016','5','9'] >>> t=('2016','5','9') >>> str.join(l) '20

Python中的特殊方法以及应用详解

前言 Python 中的特殊方法主要是为了被解释器调用的,因此应该尽量使用 len(my_object) 而不是 my_object.__len__() 这种写法.在执行 len(my_object) 时,Python 解释器会自行调用 my_object 中实现的 __len__ 方法. 除非有大量的元编程存在,直接调用特殊方法的频率应远小于实现它们的次数. 模拟数值类型 可以通过在自定义对象中实现 __add__ 和 __mul__ 等特殊方法 ,令其支持 +.* 等运算符. 如下面的模拟向

Python中pygame安装方法图文详解

本文实例讲述了Python中pygame安装方法.分享给大家供大家参考,具体如下: 这里主要描述一下我们怎样来安装pygame 可能很多人像我一样,发现了pygame是个好东东,但是就是不知道怎样使用,或者怎样安装,在百度/google上面搜索了一番后,发现没有一篇 详细描述pygame的安装过程的文章.如果你是其中的一员,那么这篇教程可能会帮助到你. 当然,在学习pygame的时候,需要你要有一定的python基础知识的.如果你已经具备了一定的python基础,那么接下来的内容可能对你来说就很

Python中str is not callable问题详解及解决办法

Python中str is not callable问题详解及解决办法 问题提出: 在Python的代码,在运行过程中,碰到了一个错误信息: python代码: def check_province_code(province, country): num = len(province) while num <3: province = ''.join([str(0),province]) num = num +1 return country + province 运行的错误信息: check

python中私有函数调用方法解密

本文实例讲述了python中私有函数调用方法.分享给大家供大家参考,具体如下: 与大多数语言一样,Python 也有私有的概念: ① 私有函数不可以从它们的模块外面被调用 ② 私有类方法不能够从它们的类外面被调用 ③ 私有属性不能够从它们的类外面被访问 与大多数的语言不同,一个 Python 函数,方法,或属性是私有还是公有,完全取决于它的名字. 如果一个 Python 函数,类方法,或属性的名字以两个下划线开始(但不是结束),它是私有的:其它所有的都是公有的. Python 没有类方法 保护

python中黄金分割法实现方法

本文实例讲述了python中黄金分割法实现方法.分享给大家供大家参考.具体实现方法如下: ''' a,b = bracket(f,xStart,h) Finds the brackets (a,b) of a minimum point of the user-supplied scalar function f(x). The search starts downhill from xStart with a step length h. x,fMin = search(f,a,b,tol=1