给我一个使用Python decimal模块中的 localcontext() 函数的案例
时间: 2023-04-05 08:02:54 浏览: 211
当然可以,下面是一个使用 Python decimal 模块中的 localcontext() 函数的案例:
```
import decimal
def calculate_pi(precision):
with decimal.localcontext() as ctx:
ctx.prec = precision
pi = decimal.Decimal(0)
sign = 1
for i in range(0, 100000):
pi += sign * (decimal.Decimal(1) / (decimal.Decimal(2) * decimal.Decimal(i) + decimal.Decimal(1)))
sign *= -1
return pi * decimal.Decimal(4)
print(calculate_pi(100))
```
这个案例中,我们使用了 localcontext() 函数来设置 decimal 模块的精度,然后计算了圆周率的值。这个案例可以让我们更好地理解 localcontext() 函数的作用。
相关问题
给我一个使用Python decimal模块中的 setcontext函数的案例
可以的,以下是一个使用Python decimal模块中的 setcontext函数的案例:
```
import decimal
# 创建一个Decimal对象
x = decimal.Decimal('1.23456789')
# 创建一个上下文对象
ctx = decimal.Context(prec=4, rounding=decimal.ROUND_HALF_UP)
# 使用setcontext函数将上下文对象应用到Decimal对象上
with decimal.localcontext(ctx):
y = x * 2
# 输出结果
print(y)
```
这个案例中,我们首先创建了一个Decimal对象x,然后创建了一个上下文对象ctx,设置精度为4位,四舍五入方式为ROUND_HALF_UP。接着,我们使用setcontext函数将上下文对象应用到Decimal对象x上,计算出y的值。最后,我们输出了y的值。
阅读全文