目前,Python版本中关于保留指定小数位数的常用方法有以下几种:

1. 使用round()内置函数

print(round(1.234, 2))

输入结果为:1.23

round()函数中的第一个变量为需要保留指定位数的小数,第二个变量为指定要保留的位数(如上例保留两位小数。该参数默认为0,即不保留小数,直接近似为整数)。

2. 使用decimal模块

from decimal import Decimal

print(Decimal('1.234').quantize(Decimal("0.00")))

输入结果为:1.23

3. 使用%来格式化字符串输出(Python-小知识汇总6-10的第6.1部分)

print('%.2f' % 1.234)

输入结果为:1.23

4. 使用format方法来格式化字符串输出(Python-小知识汇总6-10的第6.2部分)

print('{:.2f}'.format(1.234))

上述代码同样可以写为:print(format(1.234, '.2f'))

输入结果均为:1.23

但是,上述四种方法在具体应用时,有可能会出现误差,这和浮点数的精度有关。我们知道在机器中浮点数不一定能精确表达,因为换算成一串1和0后可能是无限位数的,机器已经做出了截断处理。参考地址:https://www.cnblogs.com/anpengapple/p/6507271.html

这里的具体原因我们不展开说,通过几个例子来说明上述几种方法出现误差的时候:

可以看出,当约去的小数为5的时候,上述的几种不同的方法均可能会出现误差。不同方法出现误差的原因我们这里不深究。为了准确形成一种能够根据四舍五入来保留小数位的方法,我们可以通过编写以下代码函数来实现。

#代码

def xiaoshufunc(float_a, n):    #float_a为原小数,n为要保留的小数位数

string_a = str(float_a)

a, b, c = string_a.partition('.')    #此时的a、b和c的类型均为字符串类型

cc = c[:n]

if int(c[n])>=5:

ccc = int(cc)+1

else:

ccc = int(cc)

print('小数'+str(float_a)+'保留'+str(n)+'位小数后的结果为:'+a+b+str(ccc))

xiaoshufunc(1.05,1)    #输出结果为1.1

xiaoshufunc(1.15,1)    #输出结果为1.2

xiaoshufunc(1.25,1)    #输出结果为1.3

xiaoshufunc(1.35,1)    #输出结果为1.4

python结果四舍五入保留两位小数_Python-根据四舍五入精确保留小数位数的方法...相关推荐

  1. python向下取整pi并保留4位小数点_Python取整及保留小数小结

    1.int() 向下取整 内置函数 n = 3.75 print(int(n)) >>> 3 n = 3.25 print(int(n)) >>> 3 2.roun ...

  2. c++ 四舍五入保留两位小数_Excel中保留小数点位数

    今天老板让我把带有小数点的表格进行整理,老板说把数据整理成保留两位,默认为四舍五入,老板还要整理成一种不四舍五入的数据.好的老板马上整理,这次老板的要求正好是我会的,真棒!我们一起来学一下吧. 首先我 ...

  3. oracle当中怎么保留两位小数

    1.round保留两位 round:四舍五入(最多保留两位,没有小数的时候不展示) select round(66.667,2) N1 from dual; 2.trunc保留两位 trunc:直接截 ...

  4. c++保留两位有效数字和保留小数点后两位

      演示代码如下: #include <iostream> #include <iomanip>using namespace std;int main() {double a ...

  5. python计算圆面积保留两位数_python中怎么实现保留两位小数

    python中怎么实现保留两位小数,两位,方法,小数,模块,四舍五入 python中怎么实现保留两位小数 易采站长站,站长之家为您整理了python中怎么实现保留两位小数的相关内容. Python中实 ...

  6. python保留两位小数_python中怎么实现保留两位小数

    Python中实现保留两位小数的方法如下: 保留两位小数,并做四舍五入处理 方法一: 使用字符串格式化>>> a = 12.345 >>> print(" ...

  7. python取两位小数点的函数_python中round函数保留两位小数的方法

    在我们日常计算的过程中,如果计算出小数,对大量的被保留数据,采用四舍五入这种保留法的误差总和是最小的,能使被保留部分的与实际值差值不超过最后一位数量级的二分之一.四舍五入是一种精确度的保留法,是我们使 ...

  8. python中保留两位小数的函数_python中round函数保留两位小数的方法

    在我们日常计算的过程中,如果计算出小数,对大量的被保留数据,采用四舍五入这种保留法的误差总和是最小的,能使被保留部分的与实际值差值不超过最后一位数量级的二分之一.四舍五入是一种精确度的保留法,是我们使 ...

  9. python列表数据怎么保留两位小数_python中怎么实现保留两位小数

    Python中实现保留两位小数的方法如下: 保留两位小数,并做四舍五入处理 方法一: 使用字符串格式化>>> a = 12.345 >>> print(" ...

最新文章

  1. 自己动手写C语言编译器(5)
  2. soapUI学习笔记--用例字段参数化
  3. ServiceStack.Redis常用操作 - 事务、并发锁
  4. 服务器站点解密出错,修改域超级管理员密码后站点复制出错。
  5. MongoDB- 简单操作命令
  6. c语言无符号扩展,C语言无符号和有符号的区别
  7. java生成world文件_Hello World 项目创建与项目配置文件介绍
  8. pythonexcel编译码_python对excel的读写操作
  9. FlightGear的IO系统
  10. jQuery实现动态添加删除表格的行
  11. sipP测试,UAS怎么主动发BYE消息
  12. invalid characters encountered in Hex string
  13. LeetCode 单调栈练习题归纳总结
  14. CSS错误 Do not use empty rulesets
  15. 如何用matlab画旋转面,基于MATLAB在旋转面及其方程教学中应用的教学设计
  16. 在菜单Setting加入子菜单
  17. 派森python教程_Python系列教程一Python入门(一)
  18. 用asp.net开发移动wap网站集成在线wap模拟器
  19. 9个Java方向公众号
  20. Hystrix的监控平台

热门文章

  1. ViewAnimator 之(三) ViewAnimator及其子类分析
  2. 华为智慧屏鸿蒙实锤安卓,首款华为旗舰机已确认!鸿蒙操作界面被实锤?却惨遭质疑披皮安卓...
  3. 满满干货!红书运营保姆级教程
  4. DateSerial 函数
  5. Excel 2010 SQL应用072 SQL获取母亲节的日期
  6. .Net开源工作流,100%源码开放
  7. 自然语言处理NLP星空智能对话机器人系列:深入理解Transformer自然语言处理 Translations with Trax
  8. C++使用hash_map时警告(backward_warning.h:28:)
  9. 网络推广怎么做有效果
  10. 腾讯地图:PC端将于11月11日停止服务