• 技术文章 >Python技术 >Python基础教程

    使用python递归函数实现实现N阶乘

    十一十一2020-11-19 15:55:02原创13126

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

    使用递归实现N阶乘

    1

    2

    3

    4

    5

    6

    7

    8

    def factorial(n):

        print(n)

        #递归结束条件n = 1结束

        if n > 1:

            # n*n-1,理解factorial调用自己

            return n * factorial(n-1)

        return n

    factorial(5)

    结果:

    1

    2

    3

    4

    5

    6

    5

    4

    3

    2

    1

    120

    如图所示:

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

    1

    RecursionError: maximum recursion depth exceeded in comparison

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

    专题推荐:python递归函数实现实现n阶乘
    上一篇:如何使用python生成器返回指定的值? 下一篇:python匿名函数-lambda计算圆面积

    相关文章推荐

    • python中浅拷贝与深拷贝模块的使用• python元组里常用的函数有哪些?• 如何使用python生成器返回指定的值?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网