MST

星途 面试题库

面试题:Python 中 return 关键字在函数嵌套中的特殊用法

请编写一个Python函数,该函数内部有多层函数嵌套。在最内层函数中使用return关键字,使其能够直接返回最外层函数的结果,并解释这个过程中return的作用机制。
11.8万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
def outer_function():
    def inner_function1():
        def inner_function2():
            return "这是最外层函数的结果"
        return inner_function2()
    return inner_function1()


result = outer_function()
print(result)

在这个过程中,return的作用机制如下:

  1. 最内层函数inner_function2中的return语句会将其后面的值(即字符串"这是最外层函数的结果")返回给调用它的函数,也就是inner_function1
  2. inner_function1没有对返回值做额外处理,直接将从inner_function2得到的返回值返回给调用它的函数,即outer_function
  3. outer_function同样没有对返回值做额外处理,直接将从inner_function1得到的返回值返回给调用outer_function的地方,最后赋值给result并打印出来。所以return在每层函数中负责将值返回给调用它的上层函数,从而实现将最内层函数的返回值层层传递到最外层函数。