Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将列表中的n个数字相加并返回总数_Python_Python 3.x_List_Function - Fatal编程技术网

Python 将列表中的n个数字相加并返回总数

Python 将列表中的n个数字相加并返回总数,python,python-3.x,list,function,Python,Python 3.x,List,Function,我试图定义一个函数,该函数将添加列表中的n个数字并返回总数。我的代码: def addition(): i = True while i: print("You chose addition") print() addition_values_list = [] addition_count = int(input("Enter number of count: "))

我试图定义一个函数,该函数将添加列表中的n个数字并返回总数。我的代码:

def addition():
    i = True
    while i:
        print("You chose addition")
        print()
        addition_values_list = []
        addition_count = int(input("Enter number of count: "))
        for i in range(1,addition_count+1):
            values = int(input(f"Enter value of number {i}:  "))
            addition_values_list.append(values)
        for j in range(1,len(addition_values_list+1)):  # <-- The error occurs here.
            total = total + (addition_values_list[j])  # <--
        print(total)
你能告诉我我做错了什么吗

添加值列表是一个列表。不能将整数1添加到列表中。 您可以从1运行到添加值列表。在Python中,索引从0开始。 在使用total+之前,必须将total重置为某个值。。。 因此,代码应该如下所示:

total = 0
for j in range(len(addition_values_list)):
    total = total + (addition_values_list[j])
请注意,您可以使用for循环立即获取值。您不必在此处使用索引:

total = 0
for j in addition_values_list:
    total = total + j
您可以使用sum,这可能会更快:

sum(addition_values_list)

你能公布它给你的错误吗?对于范围1中的j,lenaddition\u values\u list+1:TypeError:只能将list not int连接到listlenaddition\u values\u list+1:您正在将1添加到list not lenaddition中。此外,总计也未定义,并且在分配给它的sumaddition\u values\u list之前尝试使用它时将抛出错误。list不知道这一点