将数学函数作为参数传递

-1 投票
2 回答
83 浏览
提问于 2025-04-14 16:52

怎么把一个数学函数放到Python函数的参数里呢?

就像这样:

def myFunction(function):
      rep = []
      for i in range(100):
            rep.append(function) 
      return rep

这里的 i 比如可以是 x,你可以写成 myFunction(2x-1)

2 个回答

-1

是的,你可以像这样把一个 lambda 表达式传递给一个函数:

def myFunction(function):
      Rep = []
      for i in range(100):
            Rep.append(function) 
      return Rep

functions = myFunction(lambda x:2*x-1)
2

使用 lambda 函数应该可以正常工作,Python 把它当作一个匿名函数。下面是代码:

def myFunction(math_function):
    rep = [] 
    for i in range(100):
        rep.append(math_function(i))  
    return rep

result = myFunction(lambda x: 2*x - 1)
print(result)

不过,如果这个函数非常复杂,你可能会更喜欢用另一个 def 语句来定义它,比如:

def myMathFunction(x):
    return 2*x - 1  # Replace this with any mathematical operation you need

result = myFunction(myMathFunction)

撰写回答