解决OverflowError: int too large to convert to float的办法

写代码的时候出现了OverflowError: int too large to convert to float问题,经过查找,寻到了解决的办法。
解决办法:
from decimal import Decimal #精于计算
from decimal import getcontext #保留的小数位数,自己设置

‘’‘n=np.math.factorial(30000)
m=np.math.factorial(200)
mn=np.math.factorial(29800)
rest =n/(m*mn)’’’
这样求C(m,n)会出现错误,如果按照下面的可以

from decimal import Decimal #精于计算
from decimal import getcontext #保留的小数位数,自己设置
n=Decimal (np.math.factorial(30000))
m=Decimal(np.math.factorial(200))
mn=Decimal(np.math.factorial(29800))
rest =n/(m*mn)
print(rest)

你可能感兴趣的:(python,python)