用decimal模块增加python的浮点数精度
浮点数python默认是17位精度,也就是小数点后16位(16位以后的全部四舍五入了),虽然有16位,但是这个精度越往后越不准.
如果有特殊需求,需要更多的精度,可以用decimal模块,通过更改其里面getcontext()函数里面的prec参数,来决定你想要的浮点数精度。
from decimal import Decimal from decimal import getcontextwork_context = getcontext() work_context.prec = 100 print(work_context) ''' Context(prec=100, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, capitals=1, clamp=0, flags=[], traps=[InvalidOperation, DivisionByZero, Overflow]) <class 'decimal.Decimal'> '''d = Decimal(1) / Decimal(3) print(type(d), d)"""0.3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333"""
转载于:https://www.cnblogs.com/lshedward/p/9902193.html
用decimal模块增加python的浮点数精度相关推荐
- Python中浮点数精度处理
from: Python中浮点数精度处理 Python中,浮点数运算,经常会碰到如下情况: 出现上面的情况,主要还是因浮点数在计算机中实际是以二进制保存的,有些数不精确. 比如说: 0.1是十进制,转 ...
- 【Python】浮点数精度问题(包含解决方案)
浮点数精度问题 概述 解决方案 概述 之前提到过,Python 中浮点类型之间的运算,其结果并不像我们想象的那样,例如: >>> 0.1+0.2 0.3000000000000000 ...
- python append 浮点数 精度_Python打牢基础,从12个语法开始!
(点击上方快速关注并设置为星标,一起学Python) 来源:宏伦工作室 作者:张宏伦 链接: https://cloud.tencent.com/developer/article/1144890 ...
- python的浮点数_python中浮点数的精度
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python中,浮点数运算,经常会碰到如下情况:? 出现上面的情况,主要还是因浮 ...
- python decimal_Python中的decimal模块执行精确的浮点运算
简介 如果你从事科学或工程领域的大多数计算,那么使用普通的浮点类型是比较普遍的做法.因为在真实世界中很少会要求精确到17位精度的普通浮点数.因此,计算过程中的那么一点点的误差是被允许的.其次,原生的二 ...
- python3的float数精度_Python numpy 浮点数精度问题
Python numpy 浮点数精度问题 在复现FP(fictitious play, Iterative solution of games by fictitious play-page393)算 ...
- Python浮点数精度问题(decimal模块)
很多友友们在使用python编写程序时肯定都遇到过一个"阻拦索",那就是python的浮点数减法精度问题,如图 当时我也很吃惊,后来我问过比我资历高点的程序员得知,python的浮 ...
- python float精度问题_Python之☞float浮点数精度问题
(下面是精度漏洞的问题-转自其它) 从下面这段脚本体现出来: >>> x = 0.0 >>> for i in range(10): x += 0.1 print( ...
- 如何提高Python计算浮点数的精度(如何解决Python中浮点数计算误差问题)
我们可以使用decimal模块来提高python中浮点数计算的精度: 1. 导入decimal模块:import decimal 2. 创建一个Decimal对象:a = decimal.Decima ...
最新文章
- Oracle 自己主动内存管理 SGA、PGA 具体解释
- 深度学习时代的目标检测算法综述
- 枚举对象注释_如何以及何时使用枚举和注释
- 使用Zeigarnik效应来学习编码更快
- vector中resize和reserve接口的异同
- python 修改列名_请教一个 Python 技巧(批量对 pandas.DataFrame()统一修改列名)
- 红帽7.1安装Zabbix 3.4
- myeclipse2014 mysql连接池_MyEclipse配置数据源连接池
- 利用Enterprise Library中的DAAB构造的数据库访问架构
- 准备 Kendo UI 开发环境
- CodeForces Gym 100935E Pairs
- [渝粤教育] 浙江大学 2021秋 茶叶加工与品质管理学Ⅰ 陈萍 章节答案考试答案 浙江大学[渝粤教育]
- Base64中文乱码解决方法
- 从零开始制作STM32F103RCT6小车(一)
- 什么是真正的架构设计?某厂十年Java经验让我总结出了这些,不愧是我
- 如何解决微信端直接跳WAP端
- 【JZOJ 5426】【NOIP2017提高A组集训10.25】摘Galo
- 购房流程 - 新浪网
- R语言1——R的安装和相关介绍
- html下拉列表不居中_学习之路-前端-笔记-一、HTML笔记(转)