gpt4 book ai didi

python - 在python函数中创建一个新函数作为返回值?

转载 作者:太空狗 更新时间:2023-10-29 19:35:29 24 4
gpt4 key购买 nike

我想知道是否可以在 python 中执行以下操作:

def func1(a,b):
return func2(c,d)

我的意思是,假设我用 a,b 做了一些事情,这导致了一些可以定义新函数的系数,如果 a,b 的操作确实可行并且能够访问这个函数,我想创建这个函数在 func1 之外。

一个例子是给定函数 f 的简单傅立叶级数 F(x):

def fourier_series(f,N):
...... math here......
return F(x)

我的意思是我想创建并存储这个新函数供以后使用,也许我想推导它,或者积分或绘图或任何我想做的事情,我不想发送点(s) ) x 用于在 fourier_series(或 func1(..))中进行评估,我只是说 fourier_series 创建了一个接受变量 x 的新函数,此函数可以稍后在外部调用,如 y = F(3)... 如果我做了自己够清楚了吧?

最佳答案

你应该能够通过定义一个新的内联函数来做到这一点:

def fourier_series(f, N):
def F(x):
...
return F

您不限于传递给 fourier_series 的参数:

def f(a):
def F(b):
return b + 5
return F

>>> fun = f(10)
>>> fun(3)
8

关于python - 在python函数中创建一个新函数作为返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12738031/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com