如何在Python中进行西格玛求和表示法?

问题描述 投票:0回答:1

如何将表达式作为参数传递到函数中,然后在 Python 中执行它?

def f(variable, function):
    # here calculate the function (unknown part)

f(3, 2 * variable)

结果应为 6。(f(x) = 2 * x; x = 3)

我该怎么做?

python function lambda
1个回答
6
投票
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

© www.soinside.com 2019 - 2024. All rights reserved.