(记录)python篇:六_ 函数2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(记录)python篇:六_ 函数2相关的知识,希望对你有一定的参考价值。

#递归函数

#函数内部,一个函数可以调用自身本身,这个函数就是递归函数。

def num(x):  #第一步
    return num_a(n,1) #第二部
def num_a(a,b): #与第二部对应,如果此时的num_a与上一步定义的函数不对应,则代码报错。
    if a==1:    #(最后一部判断)由于a==3,所以a==1不成立,直到a==1时才返回b,循环才结束。
        return b
    return num_a(a-1,a*b)#此时循环结束,但是判断里的循环未结束。


#x等于3时

#num_a(3,1)

#num_a(2,3)

#num_a(1,6)

#返回num_a(a-1,a*b)值与上面对于num_a(a,b),a在不断减1,而b得出定义表达式的a*b相乘,直到a==1时,判断成立,return返回结束。

#所以答案为num_a(1,6),a==1,b==6

#此递归函数也和循环是等价的,但是他不依靠循环语句,只是本身咋不断调用函数,因此会发生栈溢出的问题。



学习内容来自廖俊峰的官方网站



ps:本人python不是抄袭,而是学习篇>>>写的是本人学习的笔记,记录下来方便本人以后参考。

本文出自 “麻花的博客” 博客,请务必保留此出处http://mahua.blog.51cto.com/11572858/1969786

以上是关于(记录)python篇:六_ 函数2的主要内容,如果未能解决你的问题,请参考以下文章

python之旅六第七篇面向对象

python基础六

Python代码阅读(第26篇):将列表映射成字典

python函数六(生成器,内置函数)

Python 函数声明和调用

Python基础篇_函数及代码复用