gpt4 book ai didi

python - 为什么 scipy.special.comb 和 math.comb 之间存在差异?

转载 作者:行者123 更新时间:2023-12-04 14:59:07 25 4
gpt4 key购买 nike

有人可以解释为什么这不相等吗?

import scipy
import math
sum(math.comb(250, i) for i in range(0, 251)) == sum(scipy.special.comb(250, i) for i in range(0, 251))
但是,例如,是吗?
sum(math.comb(25, i) for i in range(0, 26)) == sum(scipy.special.comb(25, i) for i in range(0, 26))
谢谢 :)

最佳答案

来自 documentation您发现,您必须像这样将“精确”标志设置为 True:

scipy.special.comb(250, i, exact=True)
然后您的代码将读取
import scipy.special as ssp
import math
print(sum(math.comb(250, i) for i in range(0, 251)) == sum(ssp.comb(250, i, exact=True) for i in range(0, 251)))
并输出“真”。
文档说

exactbool, optional

If exact is False, then floating point precision is used, otherwise exact long integer is computed.

关于python - 为什么 scipy.special.comb 和 math.comb 之间存在差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67315060/

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