创建一个列表并计算其总和。
我在一个函数中创建了一个列表。我将该列表传递给名为v的变量。 在下一个函数中,我创建了一个函数以返回该列表的总和。
plot(data$x, data$y, pch=19, col=data$level)
legend ("topleft", levels(data$level), fill=0:3)
我的代码正在执行两次第一个函数。我有什么办法可以将列表(v)传递给其他函数,以使程序按预期运行?
答案 0 :(得分:1)
您只需要将返回的结果存储在变量中,如下所示:
v = creat_list(list_size)
print(v)
print(sum_list(v))
请注意,v
中的creat_list
变量对函数来说是 local ,并且一旦返回就不会存在于函数之外。
答案 1 :(得分:0)
def list_generator(list_size):
v = [int(input('Digit number\n')) for i in range(0,list_size)]
return v
它返回您的列表,在这种情况下,您已经直接将其传递给print()函数,而没有将其保存以备将来使用。
您可以选择将其保存在这样的变量中:
v = list_generator(list_size)
然后您可以将
v
作为参数传递给您的list_sum
乐趣:
def list_sum(v):
return sum(v)
您遇到v
中未定义的错误list_sum
,因为v既不是该特定函数的已定义局部变量,也不是作为参数传递的
答案 2 :(得分:-1)
这就是你想要的吗?
def list_generator(list_size):
v = [int(input('Digit number')) for i in range(0, list_size)]
return v
def list_sum():
return sum(v)
list_size = 3
v = list_generator(list_size)
print(v)
print(list_sum())