python函数没有return,返回什么(python函数可以没有return语句,不返回值)

python函数没有return,返回什么(python函数可以没有return语句,不返回值)度娘搜了一下 大部分是认为没有返回值 可是实际编写你会发现并非如此 下面随便编写一个测试程序 有 return 语句 结果 1 没有 return 语句 结果 2 那么很多人可能会以为如果函数没有 return 语句就会返回最后一条语句的值 那么我们再在下面加一条语句试试 难道真的是最后一条语句的值 但在这里我们可以看到函数返回值是之前的变量 m 的值 而不是最后一条语句的值 通过查阅资料我们了解到函数在执行 return 语句时会将其右边语句的值保存在 eax 寄存器中



度娘搜了一下,大部分是认为没有返回值,可是实际编写你会发现并非如此.

下面随便编写一个测试程序,有return语句(结果1:

没有return语句(结果2:

那么很多人可能会以为如果函数没有return语句就会返回最后一条语句的值,那么我们再在下面加一条语句试试:

难道真的是最后一条语句的值?

但在这里我们可以看到函数返回值是之前的变量m的值,而不是最后一条语句的值.

通过查阅资料我们了解到函数在执行return语句时会将其右边语句的值保存在eax寄存器中,然后整个函数语句被调用时的值就是eax寄存器里面的值。

如果没有写return,那么返回的也就自然是上一次变量对应eax寄存器里面的值。

(非计算机专业,粗略解释)形参以及内部变量的值都是临时存放在eax寄存器里面的,所以它的值是时刻更新的,也就是.

这也很好地解释了图4为什么不是最后一条语句的值,而是最后一次被更新的变量m的值.

编程小号
上一篇 2025-03-01 17:40
下一篇 2025-02-18 18:06

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/56969.html