Python decimal模块的使用示例详解
作者:River 发布时间:2023-02-13 15:49:52
标签:Python,decimal
Python decimal 模块
Python中的浮点数默认精度是15位。
Decimal对象可以表示任意精度的浮点数。
getcontext函数
用于获取当前的context环境,可以设置精度、舍入模式等参数。
#在context中设置小数的精度
decimal.getcontext().prec = 100
通过字符串初始化Decimal类型的变量
因为通过浮点数初始化Decimal类型的变量会导致精度的丢失
# 浮点数的初始化
a = decimal.Decimal('3.14159265')
setcontext函数
decimal.ROUND_HALF_UP 对浮点数四舍五入
import decimal
x = decimal.Decimal('1.23456789')
context = decimal.Context(prec=4,rounding=decimal.ROUND_HALF_UP)
decimal.setcontext(context)
y1 = x
y2 = x*2
print("y1",y1)
print("y2",y2)
>>>y1 1.23456789
>>>y2 2.469
localcontext函数
用于创建一个新的context环境,可以在该环境中设置精度、舍入模式等参数,不会影响全局的context环境。
import decimal
x = decimal.Decimal('1.23456789')
context0 = decimal.Context(prec=9,rounding=decimal.ROUND_HALF_UP)
decimal.setcontext(context0)
y1 = x * 2
print("y1",y1)
with decimal.localcontext() as context:
context.prec = 4
context.rounding = decimal.ROUND_HALF_UP
y2 = x * 2
print("y2",y2)
>>>y1 2.46913578
>>>y2 2.469
>>>
>>>
来源:https://blog.csdn.net/Chandler_river/article/details/129447436
0
投稿
猜你喜欢
- 在一篇文章 理解Python异步编程的基本原理 这篇文章中,我们讲到,如果在异步代码里面又包含了一段非常耗时的同步代码,异步代码就会被卡住。
- def cndebug(obj=False): """ Author : Nemon Update : 200
- ASP中的全角和半角转化函数,使用方法,传入要转换的字符给str即可,flag设置要转换的类型。<% Function&n
- 在云计算大行其道的时代,当你要部署一个网站时第一选择肯定是各式各样的云端服务。那么究竟使用什么样的云端服务才能够以最快捷的方式部署一个 AS
- 一、切换到Oracle用户su – oracle二、登录到sys用户sqlplus / as sysdba三、创建临时表空间//查询临时表空
- 本文实例为大家分享了Python查询IP地址归属的具体代码,供大家参考,具体内容如下#!/usr/bin/env python# -*- c
- 抽象特点Python 一切皆对象,基于此概念,对 类 class 有以下特点:类与实例的属性类对象创建可选择定义类属性,创建实例对象时,实例
- 在python项目中,我们经常会用到lambda,那么lambda是什么呢,有什么作用,下面我们开始介绍1、可以使用lambda关键字创建匿
- 通常我们做网站,设计版面布局是第一步,如何做到版面布局具有创意又美观大方呢?这就需要一定的版面处理功底。让我们先来了解一下版面布局的步骤:一
- 用Python随机生成学生姓名,三科成绩和班级数据,再插入到PostgreSQL中。模块用psycopg2 randomimport ran
- int(x, [base])功能:函数的作用是将一个数字或base类型的字符串转换成整数。函数原型:int(x=0)int(x, base=
- 一、打开/关闭文件1、对文件操作时首先要打开文件,打开文件用 fopen()函数,语法是:fopen(filename,mode,inclu
- 排序,是许多编程语言中经常出现的问题。同样的,在Python中,如何是实现排序呢?(以下排序都是基于列表来实现)一、使用Python内置函数
- 打开VS2013 —> 工具 —> 选项 —> 环境 —> 字体和颜色 —> 纯文本(显示项中) —>
- 自定义数据库自动编号初始值和步进值问题: 如何定义数据库的自动编号字段的初始值和步进值?如何定义自动增加字段的初始值和步进值?如何使删除过数
- 这个网页颜色表是很好用,鼠标点击颜色即可复制颜色值到剪贴板,方便大家设计取色。下载苏昱css2 样式表中文手册包括颜色表:W3C- 十六色色
- 思路:<img alt="" src="/img/图片真实地址" ></img&g
- 在通过requests.post()进行POST请求时,传入报文的参数有两个,一个是data,一个是json。data与json既可以是st
- 最近使用python里的matplotlib库绘图,想在代码结束时显示图片看看,结果图片一闪而过,附上我原来代码:import matplo
- shapefile转换geojsonimport shapefileimport codecsfrom json import dumps#