范围内的Python()

时间:2017-02-02 06:29:57

标签: python function python-3.x spyder

我正在使用Python做一个项目,我需要计算第一部分的平方和:

  

“函数方块(initial,terms)有两个参数:initial   系列中的整数和系列中的术语数。它   将使用重复计算系列的总和,然后返回   结果。例如,如果第一个参数是2,则第二个参数   参数为4,函数返回54. Sum = 2 ^ 2 + 3 ^ 2 + 4 ^ 2 + 5 ^ 2 =   54"

在提示问题的提示中,它说:

for in range()

我在如何在python中使用此函数以及如何实现它时遇到了麻烦。

4 个答案:

答案 0 :(得分:0)

您可以将范围映射到平方形式,然后总结。

首先,你的范围应该是这样的

l = range(initial,initial+terms)

然后,您可以使用函数映射此范围(我更喜欢使用lambda表达式)

m = map(lambda x: x**2, l)

最后,你可以得到这个结果的总和。

sum(m)

答案 1 :(得分:0)

我认为你所追求的是像

def sumSquares(a,b):
    sum = 0
    for n in range(a,a+b):
        sum += n*n
    return sum

编辑:误解了问题,因为第二个参数是限制。固定的。

答案 2 :(得分:0)

sum([i ** 2 for i in range(initial, initial + terms)])

sum(map(lambda x: x ** 2, range(initial, initial + terms)))

两者都会以同样的方式运作。

答案 3 :(得分:0)

def squaresum(a,b):
    _sum = 0 # underline because sum is a function already
    for x in range(a,b):
        _sum += a**x
    return _sum