python – 返回vs打印列表

前端之家收集整理的这篇文章主要介绍了python – 返回vs打印列表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

编程很新.
想知道为什么这个例子打印列表中的所有项目,而第二个例子只打印第一个?

def list_function(x):
    for y in x:
        print y 

n = [4,5,7]
list_function(n)
def list_function(x):
    for y in x:
        return y 

n = [4,7]
print list_function(n)
最佳答案
您的第一个示例遍历x中的每个项目,将每个项目打印到屏幕上.您的第二个示例开始迭代x中的每个项目,但随后它返回第一个示例,这将结束该点处的函数执行.

让我们仔细看看第一个例子:

def list_function(x):
    for y in x:
        print(y)  # Prints y to the screen,then continues on

n = [4,7]
list_function(n)

函数内部,for循环将开始迭代x.首先将y设置为4,然后打印.然后将其设置为5并打印,然后打印7.

现在看看第二个例子:

def list_function(x):
    for y in x:
        return y  # Returns y,ending the execution of the function

n = [4,7]
print(list_function(n))

函数内部,然后返回.此时,暂停执行该函数,并将值返回给调用者. y永远不会设置为5或7.此代码仍然会向屏幕打印内容的唯一原因是因为它在行打印list_function(n)上调用,因此将打印返回值.如果您刚刚使用list_function(n)调用它,如第一个示例所示,则不会向屏幕打印任何内容.

原文链接:https://www.f2er.com/python/438391.html

猜你在找的Python相关文章