在 python 版本 3 中获取 def 函数代码输出的过程



我正在尝试练习def函数代码如何工作的问题。虽然我相信到目前为止我的程序不正确。这是代码:

def main():
    max=0
    getMax(1,2,max)
    print(max)
def getMax(v1,v2,max):
    if (v1>v2):
        max=v1
    else:
        max=v2
main()

这是我通过它的推理。

主函数的执行在 max=0 时开始。下一行初始化了(局部变量? getMax . v1替换为 1,v2替换为 2,max替换为 0。回到主函数,python 打印max为 0。这就是输出为 0 的原因。main 函数现在已完成,它将控件返回给其调用方(即 main() )。我的程序正确吗?让我感到困惑的是,在看到def main()函数之前,我通常会先看到getMax(或我认为它被调用的局部变量)。这里的订单重要吗?因为在我看来,在def main函数中完全忽略了 if 循环。

函数中max的参数getMax()获取变量max main() 的值的副本。 那里的更改不会传播回调用方。

相关内容

  • 没有找到相关文章

最新更新