详解python函数return语句

  • Post category:Python

当我们定义了一个函数,函数体内部可能需要返回一些值给函数的调用方进行使用。而Python中函数要返回值则需要使用关键字return语句,本回答将详细讲解return语句的规范和使用方法。

什么是return语句

在 Python 中,return 语句用于从函数中返回值,同时该语句会结束函数的执行并返回到函数的调用方。在函数体中,可以使用一个 return 语句向调用方返回一个值,也可以没有return语句不返回值。

return语句可以带上一个值,这个值就是该函数返回的结果。因此,使用return语句的函数被调用时将会返回该值结果。

下面是一个返回两个参数的函数实例

def sum_and_avg(a, b):
    sum = a + b
    avg = sum/2
    return sum, avg

result1, result2 = sum_and_avg(1,2)
print(result1, result2)

在上述代码中,函数sum_and_avg的返回值为两个变量sum, avg的值,因此在调用该函数后,使用两个变量存储返回的值,以便进一步使用。

return语句的使用方式

在函数体中使用return语句来结束函数的执行,并返回一个结果值。

当函数被调用时,当遇到return语句时,函数会立刻结束并返回给调用者。

下面是return语句的一些使用案例:

情况一:不带参数的return语句

当函数中没有参数的return语句时,该函数将不返回任何值,而是直接结束函数的运行。如下面的例子所示:

def print_hello():
    print("Hello")

result = print_hello()
print(result)

在上述代码中,print_hello()函数中没有参数的return语句。当函数调用结束时,函数并不返回任何值,因此 result的值为 None,由于函数中并没有返回值,即使result变量没有声明和初始化,程序不会出现任何错误也不会提示变量未声明,None将作为其默认值返回。在大多数情况下,保持这种模式是一个好主意,因为它使程序简洁,并避免了潜在的错误。

情况二:带一个参数值的return语句

一个函数可以通过在return语句后面加一个值来返回值。如下面的例子所示:

def add(a, b):
    sum = a + b
    return sum

result = add(1,2)
print(result)

在上述代码中,函数add()接收两个参数并返回这两个参数的值之和。在输出中,我们看到返回的结果将被存储在result变量中,并打印了该变量的值。这是在函数中使用最常见的返回示例之一。

情况三: 带多个参数值的return语句

return语句还可以返回多个值,这些值由逗号分隔,将作为元组返回。如下面的例子所示:

def func(a, b, c):
    x = a + b
    y = b + c
    z = a + c
    return x, y, z

result = func(1,2,3)
print(result)

在上述例子中,函数func接收三个参数并返回作为元组的这三个参数的组合。在输出中,我们看到返回的结果将被存储在result变量中,并打印了该变量的值(即元组中的所有值)。

使用return语句时,在任意代码块执行的某一个位置上使用return语句时,控制流将返回到当前函数的调用代码块中,并在在那里继续执行。同时,如果在函数中使用多个return语句,代码块的执行将在return语句检测到的代码位置停止。