Python decimal模块的使用示例详解

 更新时间:2023年03月11日 16:07:19   作者:River Chandler  
decimal 模块decimal意思为十进制,这个模块提供了十进制浮点运算支持,本篇文章主要给大家讲解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
>>>
>>>

到此这篇关于Python decimal模块的使用的文章就介绍到这了,更多相关Python decimal使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用python AI快速比对两张人脸图像及遇到的坑

    使用python AI快速比对两张人脸图像及遇到的坑

    这篇文章主要介绍了如何使用python AI快速比对两张人脸图像?实现过程比较简单,但是第三方python依赖的安装过程较为曲折,下面是通过实践对比总结出来的能够支持的几个版本,避免大家踩坑,需要的朋友可以参考下
    2023-02-02
  • 树莓派用python中的OpenCV输出USB摄像头画面

    树莓派用python中的OpenCV输出USB摄像头画面

    这篇文章主要为大家详细介绍了树莓派用python中的OpenCV输出USB摄像头画面,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • 使用Python下载Bing图片(代码)

    使用Python下载Bing图片(代码)

    代码另存为py文件,运行图片将自动下载到py文件相同目录,如果觉得每次运行找文件麻烦,可以新建py文件的快捷方式,程序还会自动给下载的图片命名
    2013-11-11
  • python隐藏终端执行cmd命令的方法

    python隐藏终端执行cmd命令的方法

    今天小编就为大家分享一篇python隐藏终端执行cmd命令的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • Pandas 重塑(stack)和轴向旋转(pivot)的实现

    Pandas 重塑(stack)和轴向旋转(pivot)的实现

    这篇文章主要介绍了Pandas 重塑(stack)和轴向旋转(pivot)的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • pytorch--之halfTensor的使用详解

    pytorch--之halfTensor的使用详解

    这篇文章主要介绍了pytorch--之halfTensor的使用详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • python爬虫 2019中国好声音评论爬取过程解析

    python爬虫 2019中国好声音评论爬取过程解析

    这篇文章主要介绍了python爬虫 2019中国好声音评论爬取过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • python可迭代类型遍历过程中数据改变会不会报错

    python可迭代类型遍历过程中数据改变会不会报错

    这篇文章主要介绍了python可迭代类型遍历过程中数据改变会不会报错问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • Python中三种时间格式转换的方法

    Python中三种时间格式转换的方法

    本文主要介绍了Python中三种时间格式转换的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • 基于python3实现socket文件传输和校验

    基于python3实现socket文件传输和校验

    这篇文章主要为大家详细介绍了基于python3实现socket文件传输和校验,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07

最新评论