创新互联Python教程:使用python递归函数实现实现N阶乘

我们如果想要去使用递归函数,就要注意一下,这个递归函数是需要自己调用自己,并且还要注意下结束条件和调用的深度才可以,之前也给大家介绍过实现阶乘,使用递归函数是最快,最优的方法,大家知道方法了,那知道怎么去实践吗?可以跟着我,一起来阅读下文,看下方法。

使用递归实现N阶乘

def factorial(n):
    print(n)
    #递归结束条件n = 1结束
    if n > 1:
        # n*n-1,理解factorial调用自己
        return n * factorial(n-1)
    return n
factorial(5)

结果:

5
4
3
2
1
120

如图所示:

问题:将n设置一个较大数字报异常:

RecursionError: maximum recursion depth exceeded in comparison

为什么在最后结尾,给大家说会报错情况?那是因为,我们在使用递归函数时候,一定要注意递归层数不能太多,否则,可能会报异常。

文章标题:创新互联Python教程:使用python递归函数实现实现N阶乘
网页URL:http://www.csdahua.cn/qtweb/news14/372614.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网