当我运行代码时,他们告诉我在第4行不能调用“int”objext

2024-10-03 23:17:58 发布

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

def fdPt(f, eps):
    index = 5.0
    for i in range(57):
        if f(index) - index < eps:
            return guess
        else:
            index = f(index)
    return index

我已经尽力了,我只是个初学者


Tags: inforindexreturnifdefrangeeps
1条回答
网友
1楼 · 发布于 2024-10-03 23:17:58

在将f传递到函数之前,没有看到它是什么的示例,您可能会将它视为一个序列对象,并尝试索引到它中:

if f(index) - index < eps:

。。。可能是:

if f[index] - index < eps:

这假设f是一个列表、元组、字符串或其他可索引对象。你知道吗

您现在处理它的方式是将f用作可调用的(函数、方法、类构造函数等)

要帮助检查对象,请尝试打印f类型:

def fdPt(f, eps):
    print f, type(f)

相关问题 更多 >