gpt4 book ai didi

python - 在字符串中添加 2 个小数,保留精度

转载 作者:太空宇宙 更新时间:2023-11-04 09:26:24 25 4
gpt4 key购买 nike

我有 2 个字符串,每个都包含一个十进制数,我们可以假设它们具有相同的精度。

我不能只对精度进行硬编码,因为这些字符串集有时可能具有不同的精度。

我只是想将它们的两个值相加,并使总和保持上述值的精度。

其中一个值可能有负数,这就是为什么我想避免字符串拼接的原因,这是我最初的想法。

我的代码:

str1 = "0.16107000" 
str2 = "0.00000270"
total = abs(float(str1)) + abs(float(str2))
print("Total is " + str(total))

输出:

Total is 0.16107269999999999

期望的输出:

Total is 0.16107270

另一个让事情变得棘手的例子:

str1 = "70.00000000" 
str2 = "0.00131251"

我需要总数为 70.00131251

执行此操作的最佳方法是什么?

最佳答案

from decimal import *
getcontext().prec = 8
str1 = "0.16107000"
str2 = "0.00000270"
total = Decimal(str1)+Decimal(str2)
print("Total is " + str(total))
# Total is 0.16107270

关于python - 在字符串中添加 2 个小数,保留精度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57426963/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com