python中format函数与round函数的区别
作者:lishuaigell 发布时间:2021-03-31 03:33:29
标签: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啊
来源:https://blog.csdn.net/lishuaigell/article/details/122443390
0
投稿
猜你喜欢
- 前言在制作论文插图时,有时要求将图片的局部放大来展示细节内容,同时将放大图拼接在原图上以方便观察对比。当然直接利用电脑自带的画图软件或者别的
- INI是微软Windows操作系统中的文件扩展名。这些字母表示初始化。正如该术语所表示的,INI文件被用来对操作系统或特定程序初始化或进行参
- 用ASP.NET与SQL SERVER可是缘份最好了,稍大的程序一般第一先考虑的是SQL SERVER,只是一些很考虑经济的才使用ACCES
- PHP mysqli_stat() 函数创建 SSL 连接:<?php// 假定数据库用户名:root,密码:123456,数据库:c
- W3C终于发布了第一个HTML5草案,大家还沉溺在HTML2XHTML转换的快乐和痛苦中时,却又突然发现,HTML5和XHTML2,到底谁是
- 一、创建一个进程要创建一个进程,最简单的方式是用一个目标函数实例化一个Process对象,然后与threading一样调用start()函数
- 以前的服务器,由于内存的价格过高,一般配置的内存不是很多,超过4GB的当然就不多了.现在的服务器,配置超过4GB就很多,在配作SQL 数据库
- 本文实例为大家分享了python实现大转盘抽奖的具体代码,供大家参考,具体内容如下选择转盘中的某一个方框,来进行抽奖import tkint
- 事先说明哦,这不是一篇关于Python异常的全面介绍的文章,这只是在学习Python异常后的一篇笔记式的记录和小结性质的文章。什么?你还不知
- kmp算法kmp算法用于字符串的模式匹配,也就是找到模式字符串在目标字符串的第一次出现的位置比如abababc那么bab在其位置1处,bc在
- 1.hashlib的简介hashlib 是一个提供了一些流行的hash(摘要)算法的Python标准库.其中所包括的算法有 md5, sha
- 本文实例为大家分享了python微信好友删除的具体代码,供大家参考,具体内容如下#weixin.py#coding:utf-8# !/usr
- 内容摘要:asp使用最多的就是ACCESS数据库和ms sql server数据库,本文列出了asp连接这两个数据库的方
- 在我们制作网页的时候会经常碰到一些需求,如果不知道方法,说不定会困扰我们半天。其实实现它们都很简单,下
- 后端代码就不介绍了,可以参考 django rest framework 实现用户登录认证这里介绍一下前端代码,和前后端的联调过程在comp
- 如何更改 pandas dataframe 中两列的位置:把其中的某列移到第一列的位置。原来的 df 是:df = pd.read_csv(
- 使用celery在django项目中实现异步发送短信在项目的目录下创建celery_tasks用于保存celery异步任务。在celery_
- 熟悉SQL的人都知道,完成同一个任务,SQL可能有多种写法,但不同写法的查询性能可能会有天壤之别,本文列举出五个查询优化的方法,当然,优化的
- mktime()方法是localtime()反函数。它的参数是struct_time或全9元组,它返回一个浮点数,为了兼容时ti
- 如何使用migrations的使用非常简单: 修改model, 比如增加field, 然后运行python manager.py makem