Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.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 2.7)_Python_Return - Fatal编程技术网

在函数中使用两个返回语句(Python 2.7)

在函数中使用两个返回语句(Python 2.7),python,return,Python,Return,我对该函数的输出感到困惑: def doPrint(): print "Hello", return "World" print "Goodbye", return "World" print doPrint() 输出为“Hello World”。那么,有人能解释一下为什么它没有打印出“再见世界”吗?第一个return语句之后的所有内容都是不可访问的: def doPrint(): print "Hello", return "World" &

我对该函数的输出感到困惑:

def doPrint():
    print "Hello",
    return "World"
    print "Goodbye",
    return "World"

print doPrint()

输出为“Hello World”。那么,有人能解释一下为什么它没有打印出“再见世界”吗?

第一个
return
语句之后的所有内容都是不可访问的:

def doPrint():
    print "Hello",
    return "World" <- function ends here
    print "Goodbye", <- code is unreachable
    return "World"   <- code is unreachable

该函数只输出“Hello”

然后它返回,它的返回值是“World”。返回意味着函数完成,解释器在调用函数之前一直在继续,因此返回之后出现的任何内容都是无关的

您将其称为
print doPrint()
,它调用函数并打印返回值(我们知道结果是“World”)


因此,最终的结果是“Hello World.”被打印出来。

请参见您需要查看的python教程
def doPrint():
    print "Hello",
    print  "World"
    print "Goodbye",
    return "World"

In [13]: print doPrint()
Hello World
Goodbye World