Python 为什么我的函数不能把我所有的数字相加?它只给出第一个数字

Python 为什么我的函数不能把我所有的数字相加?它只给出第一个数字,python,Python,我目前是python的初学者, 为什么我的函数不返回添加的参数 在一起这是我的密码: def add(*数字): 总数=0 对于数字中的数字: 总数=总数+数量 报税表(总数) 我使用下面的函数 add(9,9,9) 我得到输出 9 缩进有问题 试试这个: def add(*numbers): total = 0 for number in numbers: total = total + number return (total) 当前,您的代码

我目前是python的初学者, 为什么我的函数不返回添加的参数 在一起这是我的密码:

def add(*数字):
总数=0
对于数字中的数字:
总数=总数+数量
报税表(总数)
我使用下面的函数

add(9,9,9)
我得到输出

9

缩进有问题

试试这个:

def add(*numbers):
    total = 0
    for number in numbers:
        total = total + number

    return (total)

当前,您的代码在运行add函数一次后返回total,将return(total)选项卡向后移动一次,例如,您的代码应该如下所示:

def add(*numbers):
   total = 0
   for the number in number:
        total += number
   return total

调整行
返回(总计)
的缩进。现在它只返回第一个数字,而不看其他数字

这应该起作用:

def add(*numbers):
    total = 0
    for number in numbers:
        total+=number
    return total

正如其他人在回答中所说,你有一个意图问题。既然没有,;Python对缩进非常敏感,可以定义函数的限制。。。一切,真的

尝试:


欢迎来到StackOverflow!请阅读,然后将代码作为代码而不是图像添加到问题中。这是否回答了您的问题?您的
return
语句缩进太远,请将其与
for
对齐。我们不允许在堆栈溢出上显示文本图像(代码/输入/输出/错误或其他)。请以()文本的形式发布代码。阅读更多。带有文本/代码/错误图像的问题通常会关闭。还请查看和问题指南,以确保此问题和您未来的问题适合本问答。
def add(*numbers):
    total = 0
    for number in numbers:
        total = total + number
    return (total)