悉野小楼

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

python的decimal默认精度为28

python的decimal的精度可以修改的

计算pi

使用莱布尼茨级数计算圆周率

复制代码
from decimal import Decimal, getcontext

# 设置全局精度为 100 位
getcontext().prec = 100

# 使用莱布尼茨级数计算圆周率
pi = Decimal(0)
for k in range(1000000):
    pi += (Decimal(-1) ** k) / (2 * k + 1)

pi *= 4
print(pi)  # 输出: 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
复制代码


在 Python 中,float 类型使用 IEEE 754 标准来表示浮点数.
64位, 8个字节
双精度浮点数的特点
符号位:1 位(表示正负)
指数位:11 位(表示指数)
尾数位:52 位(表示有效数字)
所有能存15-17位有效数字,
正常一位10进制数用4个位表示, 但4个位没用全, 所以不用能用52/4=13, 而应该使用52位, 能表示的最大值为2^52-1=4503599627370495, 这个数字是个16位, 但精度损失问题, 有时少一位, 有时多一位, 就变成15-17位有效数字了

posted on   悉野  阅读(43)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
历史上的今天:
2023-11-15 vs code上面运行typescript
2011-11-15 inno setup 注释
点击右上角即可分享
微信分享提示