def sqrt(a):
def tryit(x):
return 0.5 * (a/x + x)
return fixedPoint(tryit(x), 0.0001)
答案 0 :(得分:0)
有几个问题:
fixedPoint()
- 这是什么?这是在其他地方定义的吗?x
而未定义它。sqrt()
,但逻辑并不是能够计算任何东西平方根的东西。至少有一个不优雅:
tryit()
)。这本身并不是问题,但它没有多大意义,并且您依赖于此处定义的局部变量a
,而不是将该变量传递给模块级别上定义的独立函数。但是很难说这个函数应该做什么。tryit()
不是一个好的功能名称。答案 1 :(得分:0)
有关定点迭代的工作示例,请参阅Solve this equation with fixed point iteration。
本问题中的代码拼错了fixed_point
,这是一个需要从scipy.optimize
导入的函数。 fixed_point
所需的参数包括函数和初始值;例如:
scipy.optimize.fixed_point(tryit, a/2)