我想了解这些说明。
在名为“summer”的主程序文件中设置一个新函数,该函数将列表作为参数并返回我们将在后续步骤中确定的值。
在“summer”函数中,设置一个循环,该循环使用名为“n”的计数器变量,该变量将采用值0,2,4,6,8,10,12。
每次循环,你都要从“mymath”模块调用你的“powerval”函数,从传递到“summer”的数据列表中作为参数项“n”和“n + 1”传递。添加所有这些值并将最终结果返回给调用者。
到目前为止,我有:
def summer(list):
for n in range(0,13,2):
value=powerval(n,n+1)
之后我迷路了。我如何执行第3步?
答案 0 :(得分:4)
你添加它们:
from mymath import powerval
def summer(somelist):
sum = 0
for n in range(0, 13, 2):
sum += powerval(somelist[n], somelist[n + 1])
return sum
因此,powerval()
的返回值被添加到目前为止的总和中,该总和从0开始。您需要传入somelist[n]
和somelist[n + 1]
值,而不是指数本身。
答案 1 :(得分:3)
您需要添加它们:
from mymath import powerval
def summer(lst):
total = 0
for n in range(0, 13, 2):
total += powerval(lst[n], lst[n + 1])
return total
我不确定您使用lst
的位置(我将list
重命名为lst
,因为list
是内置函数),所以我猜您正试图从该列表中获取n
和n + 1
个元素。
答案 2 :(得分:1)
您可以使用sum
方法以非常时尚的方式完成此任务:)
def summer(myList):
return sum(powerval(myList[n], myList[n+1]) for n in range(0, 13, 2))
这也是最快的方法。
PS:命名列表“list”并不是一个好主意,因为这是python中的保留名称。这就是为什么我在上面的例子中将它重命名为myList。