首页 > 解决方案 > 如何在 python 中创建函数以使它们将 x 作为变量返回?(插值)

问题描述

如何在 Python 中创建一个函数,例如:

n = int(input("number of knots: "))

xsolmed=[]

for i in range(n+1):
    xsolmed.append(-1+(2*i/n))

def x(x):
    return x
lni=[]
formula=1

for i in range(n+1):
    for j in range(n+1):
        if i==j:
            pass
        formula = (x(x)-xsolmed[i])/(xsolmed[j]-xsolmed[i])*formula

我想我需要它来返回函数,使得公式变量本身就是 x 的函数,所以以后我可以以时尚的方式调用它

formula(10)=output

标签: pythoninterpolationnumerical-methods

解决方案


将函数调用的结果设置为您想要的变量。

def f(x):
    "A function that changes nothing"
    return x

a = f(5) # same as a = 5

为避免混淆,我建议您不要为函数提供与其参数相同的名称(即,不要这样做def x(x): ...)。

如果你想formula成为一个函数,那么将它声明为一个,之后正确的语法是output = formula(10).


推荐阅读