为什么返回后我的打印不能在函数中工作?

时间:2019-05-14 16:52:26

标签: python python-3.x function

我的print返回后正在工作,我想知道为什么。我已经尝试了几件事,但是没有用:

def addNum(a, b, c, d, e, f,):
    return a + b + c + d + e + f
    print("dope")

list1 = addNum(2, 3, 3, 3, 3, 5)
print(list1)

我要执行的操作是打印dope,但它会跳过该部分,仅输出退货。

4 个答案:

答案 0 :(得分:4)

我建议您review the return statement。您的帖子非常类似于他们的示例:

>>> def return_middle():
...     a = 1
...     return a
...     a = 2     # This assignment is never reached.
...
>>> print(return_middle())
1

答案 1 :(得分:2)

return语句会使一个函数短路,因此只要在函数中命中return语句,该return语句之后都不会发生。

如果要打印“涂料”,则必须将print语句移至函数中return语句之前,或者将print语句完全移出函数(如果您确实希望“ dope” “,将在返回值之后打印)。这是一个示例,我将如何重写您的代码以在添加值之后打印“涂料”。

def addNum(a, b, c, d, e, f):
    return a + b + c + d + e + f

list1 = addNum(2, 3, 3, 3, 3, 5)
print(list1)
print("dope")

答案 2 :(得分:1)

在一个函数中,return语句本质上将一些数据返回给调用它的函数,然后退出该函数。如果print语句在return语句之后,则无法访问。因此,我建议将其放在return语句上方。

此外,也许删除函数参数中的多余逗号。

答案 3 :(得分:1)

在一个函数中,return语句是一个端点,如果使用该语句,则该语句将被处理,如果要打印出某些内容,则在函数返回值之前进行处理。