做python实验时碰到这么一道题:

输入三个浮点数,求它们的平均值并保留 1 位小数,对小数后第二位数进行四舍五入,最后输出结果

错误示范

因为涉及到四舍五入,随便搜了一下,发现了好多博客都用round(),就直接拿来用了

round(1.555, 2) // 对小数后第二位数进行四舍五入

# 1.55

但是当我测试时发现这个四舍五入有点水啊!比如:

>>>round(0.5)

0

>>>round(1.5)

2

原因

和想的不一样啊,然后我就去找python的官方文档,它是这么描述的:

round(values, ndigits),values are rounded to the closest multiple of 10 to the power minus ndigits; if two multiples are equally close, rounding is done toward the even choice.

值四舍五入到最接近的10倍幂减去ndigits;如果两个倍数相等,则四舍五入到偶数。

什么意思?

我尝试了几个例子才明白是怎么一回事。

如果你写过大学物理的实验报告,那么你应该会记得老师讲过,直接使用四舍五入,最后的结果可能会偏高。所以需要使用四舍六入五成双的处理方法。

例如对于一个小数a.bcd,需要精确到小数点后两位,那么就要看小数点后第三位:

如果d小于5,直接舍去

如果d大于5,

python decimal四舍五入_python精确地进行浮点数的四舍五入相关推荐

  1. python decimal用法_Python decimal模块使用方法详解

    decimal 模块:decimal意思为十进制,这个模块提供了十进制浮点运算支持 1.可以传递给Decimal整型或者字符串参数,但不能是浮点数据,因为浮点数据本身就不准确. 2.要从浮点数据转换为 ...

  2. java浮点数四舍五入_Java小程序练习--浮点数的四舍五入

    今天学习到了关于浮点数的知识,而后便编写了一个小demo,实现浮点数的四舍五入,保留两位小数. 具体实现思路如下: 1.获取用户输入的数字,将其保存到double型变量中: 2.因为要保存到小数点后的 ...

  3. python decimal函数_Python之decimal模块的使用

    decimal模块的作用 Decimal模块的实例可以准确地表示任何数,对其上或其下取整,还可以限制有效数字个数. 1.Decimal创建的使用 importdecimal fmt= '{0:< ...

  4. python怎么使用int四舍五入_python浮点数舍入(ROUND)方式总结

    Round的英文含义,就有舍入的意思,最典型的就对浮点数的四舍五入.其实,存在多种round方式,本文总结python支持的浮点数的各种舍入方式. ROUND DOWN ROUND DOWN的含义是, ...

  5. python 精度损失_Python的浮点数损失精度问题

    本篇讨论的现象可以从下面这段脚本体现出来: >>> x = 0.0 >>> for i in range(10): x += 0.1 print(x) 0.1 0. ...

  6. python decimal类型转化_python中的decimal类型转换实例详解

    [Python标准库]decimal--定点数和浮点数的数学运算 作用:使用定点数和浮点数的小数运算. Python 版本:2.4 及以后版本 decimal 模块实现了定点和浮点算术运算符,使用的是 ...

  7. 无穷分数 无穷的分数,有时会趋向于固定的数字。 请计算【图1.jpg】所示的无穷分数,要求四舍五入,精确到小数点后5位,小数位不足的补0。 请填写该浮点数,不能填写任何多余的内容。

    无穷分数 无穷的分数,有时会趋向于固定的数字. 请计算[图1.jpg]所示的无穷分数,要求四舍五入,精确到小数点后5位,小数位不足的补0. 请填写该浮点数,不能填写任何多余的内容. package s ...

  8. 无穷的分数,有时会趋向于固定的数字。 请计算【图1.jpg】所示的无穷分数,要求四舍五入,精确到小数点后5位,小数位不足的补0。 图1.jpg 请填写该浮点数,不能填写任何多余的内容。

    无穷的分数,有时会趋向于固定的数字. 请计算[图1.jpg]所示的无穷分数,要求四舍五入,精确到小数点后5位,小数位不足的补0. 图1.jpg 请填写该浮点数,不能填写任何多余的内容. public ...

  9. python怎么使用int四舍五入_python 整数int 四舍五入

    因为工作需要,需要将浮点数进行四舍五入.num=1.0 for i in range(20): num= round(num+0.05,2) print(f"数字:{num} 四舍五入取整: ...

最新文章

  1. Java入门时的一些基本概念的理解(j2ee,j2se,j2me,jdk,sdk,jre,jvm,跨平台)
  2. 一些非常实用的JSON 教程
  3. Java中的Set操作
  4. DCMTK:将DICOM结构化报告文件的内容转换为XML格式
  5. Linux redhat下安装swftools(转载后修改)
  6. C# 5.0新加特性
  7. 260多媒体语言如何调节_260马力配9.7米货厢,实拍柳汽H5小三轴载货车
  8. Java是先难后易吗_学软件应该“先难后易”还是“先易后难”?
  9. 【练习8.7】cvGoodFeaturesToTrack确定图像强角点、cvFindCornerSubPix亚像素级角点检测...
  10. 如何对计算机c盘进行清理,C盘清理,小编教你怎么给电脑C盘进行清理
  11. python判断是否为素数_python判断一个数是否为素数
  12. matlab导入数据文件,matlab怎么导入mat数据文件
  13. 汉字进行计算机识别的原理,计算机OCR文字识别技术的原理和未来发展趋势
  14. 电脑端10大图片处理类神器
  15. Android9.0 网络安全配置文件
  16. ssm中小企业仓库管理信息系统的开发与实现毕业设计源码150916
  17. Salesforce系列(五):Salesforce Apex基础SOSL查询和数据添加!
  18. 如何更改音频格式?分享这几个简单的转换方法给你
  19. Js逆向教程17-极验滑块 实现加密算法的逻辑
  20. 带你走出计算机安全防范的六个误区

热门文章

  1. 《童梦奇缘-梦幻般的羁绊》第五章-长河
  2. 山东省软考报名时间成绩查询山东省教育考试院山东人事考试网报名入口
  3. KMM(Kotlin Multiplatform Mobile)环境搭建
  4. Scrapy框架学习(四)爬取360摄影美图
  5. ViewPager2 详细使用
  6. Python爬取AES加密的m3u8视频流的小电影并转换成mp4
  7. 使用Python开发windows桌面程序【超简单】
  8. shell脚本的调试
  9. Oracle语法to_char、to_date和add_months的用法
  10. 【目标检测】36、OTA: Optimal Transport Assignment for Object Detection