python中四舍五入的正确打开方式


Posted in Python onJanuary 18, 2021

round()函数

(注意:下面的我也不清楚是否正确,我只是发表一下我的观点)

对于简单的舍入运算,使用内置的 round(value, ndigits) 函数即可
强烈建议不要去深究,就直接得结果就好
ndigiths可以为正数,也可以为负数,还可以为0,可以为空
n:就是精确到第n位小数,对整数没有影响,1为精确到十分位(注意:小数就是从十分位往后推的)
-n:就是精确到整数位,-1为精确到十位,然后就是百位千位…有小数位就全舍掉,不管多大,但会保留一个为0的小数位
0:精确到个位,但会保留一个为0的小数位
为空:精确到个位,没有小数位

其他还好就这个临界点5很烦,我自己感觉得啊
就我以前的理解要是将1.49精确到个位应该得到的是2对吧,是从右往左依次进行四舍五入吧,但python运行结果为1
下面是小数部分的

>>> round(1.49)
1
>>> round(1.5)
2
>>> round(0.5)
0
>>> round(0.51)
1
>>> round(0.051,1)
0.1
>>> round(0.05,1)
0.1
>>> round(0.046,1)
0.0
>>> round(0.25,1)
0.2
>>> round(0.35,1)
0.3
>>> round(0.251,1)
0.3

这里是整数

>>> round(1235,-1)
1240
>>> round(1245,-1)
1240
>>> round(1234.99,-1)
1230.0
>>> round(1245,-2)
1200

这是我在网上查的对四舍五入的理解:
1、同型算法:四舍六入五成双。这里"四"是小于五的意思,"六"是大于五的意思,"五"是舍入位之后的尾数逢五的话看前一位,奇进偶不进。如1.25保留一位小数,因为2是偶数,所以是1.2。
2、从统计学的角度,"四舍六入五成双"比"四舍五入"要科学,它使舍入后的结果有的变大,有的变小,更平均。而不是像四舍五入那样逢五就入,导致结果偏向大数。
不清python用的是什么标准来进行四舍五入的
我还去网上查了一下Python中对四舍五入的理解:
在Python3中,round函数的取舍方式使用靠近最近和等距靠近偶数(ROUND_HALF_EVEN)策略
不怎么理解,辣鸡了呀
不去想了,再想会把我以前对四舍五入的理解都搞混了,花费我很多时间,还是不懂,害,任它去吧
还是想建议大家就直接使用,不要理解哦,如果你是大佬就当我没说,嘿嘿

format()函数

如果只想在输出时按格式打印,使用format()函数就好了

>>> format(1.45,'0.1f')
'1.4'
>>> format(1.35,'0.1f')
'1.4'

python 向上取整ceil 向下取整floor 四舍五入round

#encoding:utf-8
import math

#向上取整
print "math.ceil---"
print "math.ceil(2.3) => ", math.ceil(2.3)
print "math.ceil(2.6) => ", math.ceil(2.6)

#向下取整
print "\nmath.floor---"
print "math.floor(2.3) => ", math.floor(2.3)
print "math.floor(2.6) => ", math.floor(2.6)

#四舍五入
print "\nround---"
print "round(2.3) => ", round(2.3)
print "round(2.6) => ", round(2.6)

#这三个的返回结果都是浮点型
print "\n\nNOTE:every result is type of float"
print "math.ceil(2) => ", math.ceil(2)
print "math.floor(2) => ", math.floor(2)
print "round(2) => ", round(2)

运行结果:

python中四舍五入的正确打开方式

到此这篇关于python中四舍五入的正确打开方式的文章就介绍到这了,更多相关python 四舍五入内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
跟老齐学Python之关于循环的小伎俩
Oct 02 Python
Python 使用SMTP发送邮件的代码小结
Sep 21 Python
利用Anaconda简单安装scrapy框架的方法
Jun 13 Python
在python中实现对list求和及求积
Nov 14 Python
python用pandas数据加载、存储与文件格式的实例
Dec 07 Python
Python hashlib模块加密过程解析
Nov 05 Python
python基于TCP实现的文件下载器功能案例
Dec 10 Python
Python时间差中seconds和total_seconds的区别详解
Dec 26 Python
PyQt5+python3+pycharm开发环境配置教程
Mar 24 Python
python递归函数求n的阶乘,优缺点及递归次数设置方式
Apr 02 Python
keras 自定义loss层+接受输入实例
Jun 28 Python
Python之基础函数案例详解
Aug 30 Python
PyQt5中QSpinBox计数器的实现
Jan 18 #Python
全网最细 Python 格式化输出用法讲解(推荐)
Jan 18 #Python
PyQt实现计数器的方法示例
Jan 18 #Python
Python实现邮件发送的详细设置方法(遇到问题)
Jan 18 #Python
Python实现一个论文下载器的过程
Jan 18 #Python
利用python为PostgreSQL的表自动添加分区
Jan 18 #Python
如何查看python关键字
Jan 17 #Python
You might like
PHP采集利器 Snoopy 试用心得
2011/07/03 PHP
php中批量修改文件后缀名的函数代码
2011/10/23 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
Date对象格式化函数代码
2010/07/17 Javascript
关于firefox的ElementTraversal 接口 使用说明
2010/11/11 Javascript
当jQuery遭遇CoffeeScript的时候 使用分享
2011/09/17 Javascript
JS在可编辑的div中的光标位置插入内容的方法
2014/11/20 Javascript
JQuery中两个ul标签的li互相移动实现方法
2015/05/18 Javascript
2016年最热门的15 款代码语法高亮工具,美化你的代码
2016/01/06 Javascript
详解jQuery中的empty、remove和detach
2016/04/11 Javascript
websocket+node.js实现实时聊天系统问题咨询
2017/05/17 Javascript
微信小程序选择图片和放大预览图片功能
2017/11/02 Javascript
详解如何用typescript开发koa2的二三事
2018/11/13 Javascript
JS/HTML5游戏常用算法之追踪算法实例详解
2018/12/12 Javascript
vue props 单项数据流实例分享
2020/02/16 Javascript
Vue使用axios引起的后台session不同操作
2020/08/14 Javascript
Python分析学校四六级过关情况
2017/11/22 Python
详解Python使用tensorflow入门指南
2018/02/09 Python
Python实现的维尼吉亚密码算法示例
2018/04/12 Python
pycharm修改file type方式
2019/11/19 Python
python3实现从kafka获取数据,并解析为json格式,写入到mysql中
2019/12/23 Python
解决pycharm每次打开项目都需要配置解释器和安装库问题
2020/02/26 Python
Django基于客户端下载文件实现方法
2020/04/21 Python
美国首屈一指的高品质珠宝设计师和零售商:Allurez
2018/01/23 全球购物
什么叫做SQL注入,如何防止
2016/10/04 面试题
心理健康心得体会
2014/01/02 职场文书
公司部门司机岗位职责
2014/01/03 职场文书
班组长安全职责
2014/01/05 职场文书
人力资源主管岗位职责
2014/01/29 职场文书
产品售后服务承诺书
2014/05/21 职场文书
冬季安全检查方案
2014/05/23 职场文书
2014党的群众路线教育实践活动总结报告
2014/10/31 职场文书
职代会闭幕词
2015/01/28 职场文书
合理化建议书
2015/02/04 职场文书
少年犯观后感
2015/06/11 职场文书
朝花夕拾读书笔记
2015/06/29 职场文书