unsupported operand type(s)for +=:(int) and(list)

img


大家们这个问题要怎么解决啊!python菜菜求解答
看不懂这个报错表达的是什么 也不知道要怎么改😭

错误提示整数和列表不能相加,也就是add+=b这里报错了,add是一个整数,b是一个列表,不能直接相加。原因在于plus(*numbers)这里,使用星号表示可变参数,默认会把传入的numbers变成元组,所以此时 for b in numbers 循环取的第一个数据b是一个数组而不是一个值。
解决方法就是把星号号去掉,或者在加一层循环:

def plus(*numbers):

    add = 0
    for b in numbers:
        for c in b:
            add+=c
    return add

报错说b是个list
你这个plus函数在哪调用的,怎么没有对应的代码