码迷,mamicode.com
首页 > 编程语言 > 详细

Python 递归函数 详解

时间:2017-11-08 22:23:33      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:就会   而且   结果   nbsp   images   span   pytho   ima   中断   

Python 递归函数 详解

  在函数内调用当前函数本身的函数就是递归函数

 

  下面是一个递归函数的实例:

 

技术分享

 

 

        第一次接触递归函数的人,都会被它调用本身而搞得晕头转向,而且看上面的函数调用,得到的结果会是:

技术分享

        为什么会得出上面的结果呢?因为都把调用函数本身之后的代码给忘记了,就是else之后的python 代码。

        实际此递归函数输出的是以下结果:

 技术分享

       相信大家看到这里都有点蒙,小编也一样,我第一次看到这个递归函数时,只能理解到第一个结果。那是因为,大部分人在做事情的时候,中断第一件事,被安排去做第二件事的时候,就会把第一件事后续的事情给忘记,如果在做第二件事的时候,又被中断,被安排去做第三件事,就会把第一件、第二件要做的后续的事情给忘记......,这就是不理解递归函数的原因。

       下面我把此递归函数做了一个分解,希望能够帮到大家。 

       详解递归函数,当调用递归函数digui(3)时,执行过程如下:

 技术分享

         在调用函数本身时,它之后的代码并没有结束,而是在等待条件为False 时,再接着执行之后的代码,同一个颜色的print()语句等待对应颜色的函数。

Python 递归函数 详解

标签:就会   而且   结果   nbsp   images   span   pytho   ima   中断   

原文地址:http://www.cnblogs.com/Fantinai/p/7806356.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!