如何将表达式作为参数传递到函数中,然后在 Python 中执行它?
def f(variable, function):
# here calculate the function (unknown part)
f(3, 2 * variable)
结果应为 6。(f(x) = 2 * x; x = 3)
我该怎么做?
def sigma_sum(start, end, expression):
return sum(expression(i) for i in range(start, end + 1))
请注意,要像数学中那样实现求和,重要的是在范围末尾添加一个。 Python 在到达最终值之前停止,而数学则不会。 使用
lambda
函数的示例用法…
>>> sigma_sum(1, 10, lambda i: i**2)
385
...或使用命名函数...
def square(i):
return i**2
>>> sigma_sum(1, 10, square)
385