为什么我要用浮点数除以零?

2024-10-01 19:18:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我想找到潜在的价值,并优化它使用最小化函数,但当我运行代码,我得到一个错误,说浮点除以零。有人知道有什么问题吗

下面是我的代码

def LennardJones(r):

"""
return Potential at input x for a polynomial with input r
"""
Potential = 0
for i in range(len(r)):
    Potential += 4 * 0.41 * ((2.4 / i)**12 - (2.4 / i)**6)
return Potential

Answer = minimize(LennardJones, 1)

Tags: 函数代码inforinputreturndef错误
3条回答

函数的作用是:返回一个数字序列,默认情况下从0开始,递增1(默认情况下)

开始时,i是0,不可能被0除

但是,可以通过添加参数来指定起始值:范围(2,6),这意味着从2到6的值(但不包括6)

for i in range(len(r)):

对于范围(…)中的i,通常以0开头

我认为当您没有明确指定范围时,“I”值以0开头。你可以用 range(1, len(r)),然后检查问题是否仍然存在! 有关更多详细信息,请查看documentation

相关问题 更多 >

    热门问题