递归函数的基本概念

版权声明:转载请附带我的链接,谢谢! https://blog.csdn.net/weixin_41950282/article/details/82709102

递归函数说白了就是一个自己调用自己的函数

比方说

def print_num(num):

    if num > 10: # 这是跳出的条件
        return  # 这是跳出的位置
    else:
        print(num)
        num += 1
        print_num(num)# 再次调用自己

print_num(1)

这就算是一个简单的递归函数,依次打印1-10

递归函数在使用的时候一定要注意条件return一定要在调用之前执行,否则容易进入死循环

一些问题如果能够使用其他方式进行的时候一般是不建议使用递归的,另外一方面递归在解决一些

循环深度不高的时候可以使用,因为超过一定循环次数的时候程序会崩掉,比方说

def print_num(num):

    if num > 100000: # 这是跳出的条件
        return  # 这是跳出的位置
    else:
        print(num)
        num += 1
        print_num(num)# 再次调用自己

print_num(1)

你可以尝试下,两段代码除了次数不一样之外,别的都一样。
我的只能支持我打印到999,具体是因为什么机制导致只能打印这么多我不知道,欢迎大神留言讨论。

猜你喜欢

转载自blog.csdn.net/weixin_41950282/article/details/82709102