python 函数帮助 - 为什么我在执行函数时只得到参数中的第一个数字

python function help - why am I only getting the first number in the argument when I execute the function

这是我试过的代码,我不明白为什么我在执行程序时只得到第一个参数(1)

def add(*args):
   total = 0
    for a in args:
      total += a
      return total

sum1 = add(1, 2, 3)
 print(sum1)

结果:1 (只有第一个参数)

你得到的不仅仅是第一个参数。问题是您的 return 语句在 for 循环中,并将在第一次出现循环后执行。取消缩进您的 return 语句,以便它在 for 循环完成后运行

def add(*args):
    total = 0
    for a in args:
        total += a
    return total

sum1 = add(1, 2, 3)
print(sum1)