python的decimal或者叫Decimal,BigDecimal

前言

java 复制代码
	在python中进行小数计算时,很容易发生精度错误问题!!!!一定要注意!!!
	或者说,只要进行小数的运算都要用decimal。如:银企对账;工程计算等等
	在python有叫decimal的第三方库。在java中叫BigDecimal。万万不可混肴,学
术是要严谨的,实事求是的。
	下面演示一下错误的小数计算和使用decimal进行正确计算的代码。

错误示范

javascript 复制代码
a = 0
for i in range(100000):
    a = a + 1.33

print("不准确",a)

使用decimal的正确示范

javascript 复制代码
from decimal import Decimal, getcontext
print(getcontext().prec)  # 计算精度,默认是28
getcontext().prec = 100  # 可修改
a = Decimal("0")

for i in range(100000):
    a = a + Decimal("1.33")
print("准确", a)

注意

javascript 复制代码
	一定要注意,使用字符串的小数当作参数
相关推荐
问心无愧051326 分钟前
[护网杯 2018]easy_tornado
python·tornado
全栈弄潮儿30 分钟前
Python实战第13期:模块与包
后端·python·编程语言
2401_885885041 小时前
芬兰语音通知接口怎样对接?语音提醒接入流程
android·前端·python·php·语音识别
大风起兮云飞扬丶1 小时前
Java——枚举
java·开发语言
小灰灰搞电子1 小时前
Rust+Slint 实现高级动态消息提示框源码分享
开发语言·rust
Dev _2 小时前
Python解释器安装在系统级目录导致命令行用户‌没有权限‌向该目录写入文件
开发语言·python
qq_406981032 小时前
大白话rust系列08 当变量遮蔽遇上引用,探究变量遮蔽的本质
开发语言·后端·rust
喵了几个咪2 小时前
GoWind ShortPlay 拆解:不用模型的推荐闭环——埋点回流、三路召回与已看去重
开发语言·后端·微服务·golang·gowind
谙弆悕博士2 小时前
用 C 写了个 Windows 聊天室,踩了几个多线程和控制台的坑
c语言·开发语言·c++·windows·网络编程·聊天室
Dev _2 小时前
PyCharm旧进程仍在后台运行,导致新实例无法启动或连接
ide·python·pycharm