Python 3:为什么我们在这种情况下不需要返回?

时间:2018-02-15 08:00:41

标签: python

以下是我尝试的代码:

import csv
f = open("nfl.csv", "r")
nfl = list(csv.reader(f))
patriots_wins = 0
for each in nfl:
    if each[2] == "New England Patriots":
        patriots_wins = patriots_wins + 1
        return patriots_wins
print(patriots_wins)

它给出了以下错误:

SyntaxError: 'return' outside function

2 个答案:

答案 0 :(得分:3)

return用于从函数返回值,但您尚未定义函数。

例如,您可能创建了以下函数:

def f(x):
    """Adds 5 to any integer x"""

    y = x + 5

    return y

并将此函数放在更大的上下文中,例如:

def main():

    for i in range(10):
        print(f(i))

此处,当main被调用时,我们将调用函数f() 10次,每次我们这样做f()都会将答案返回到"什么是i + 5 ?"

答案 1 :(得分:1)

你从函数返回。

check out this link

退货声明

return只能在语法上嵌套在函数定义中,而不能嵌套在类定义中。

如果存在表达式列表,则对其进行评估,否则替换为无。

return将当前函数调用与表达式列表(或None)一起作为返回值。

当return返回带有finally子句的try语句的控制权时,在真正离开函数之前执行finally子句。