文章详情页
python小白 问关于递归的问题
浏览:309日期:2022-06-29 17:17:43
问题描述
第一段代码:
# -*- coding:gb2312 -*-# 递归阶乘def getnum(num): if num > 1:print(num)return num * getnum(num - 1) else:print(num)return numresult = getnum(5)print(result)
第一段代码执行结果:

第二段代码:
# -*- coding:gb2312 -*-# 递归阶乘def getnum(num): if num > 1:return num * getnum(num - 1)print(num) else:return numprint(num)aresult = getnum(5)print(result)
第二段代码执行结果:

我的问题:我在函数当中加入了print(num)的语句,为什么第一段代码当中可以打印出5 4 3 2 1然后120,为什么第二段结果当中,仅仅只是120,却没有 5 4 3 2 1?按理说我已经把print语句都写上去了,就应该要打印啊。
问题解答
回答1:第二段代码中的return之后的print不能执行的. 函数返回了.
相关文章:
1. vue.js - android环境下在vue中引入vux.js 报错。2. docker 17.03 怎么配置 registry mirror ?3. node.js - npm安装模块时,在cmd上显示的是一条白线,白线前面是一天反斜线转圈圈,然后就出现npm ERR错误了,求帮助,谢谢4. 无法为JSP编译类:无法解析类型java.util.Map $ Entry。从所需的.class文件间接引用它5. javascript - 事件的定义有无函数的区别6. css - width设置为100%之后列表无法居中7. javascript - 如何让双核浏览器默认选择急速模式渲染页面8. mac连接阿里云docker集群,已经卡了2天了,求问?9. 登录mysql-front出现以下错误10. 第6行的$_GET[’F’]没有定义啊?求问一下是什么意思?
排行榜

网公网安备