函数调用自身的编程技巧称为递归。1、递归函数的特点:一个函数在内部调用自己,在函数内部可以调用其他函数,当然也可以在函数内部调用自己。代码特点:函数内部代码相同,只是参数不同,处理结果不同。当参数满足条件时,函数将不会执行。这个很重要,通常叫递归的出口,否则会死循环示例代码:defsum_numbers(num):print(num)#递归的出口很重要,否则会死循环#的递归退出:当参数满足满足某些条件时,函数不会执行ifnum==1:return#调用自己sum_numbers(num-1)sum_numbers(3)执行结果:上面代码示意图执行过程:文字说明:解释器执行到第一行代码发现是一个函数然后继续往下,到第13行调用函数,返回第一行代码,此时输出num为3time,继续往下执行,直到判断语句不满足条件继续往下执行到第9行代码,此时调用函数参数为num-1=2,来到第一行代码输出num为2,继续向下执行,直到judgment语句不满足条件继续往下执行,调用第九行的函数,此时参数为2-1=1,走到第一行时,输出num为1,则继续向下执行时满足条件,不执行return后的代码,然后返回上次调用该函数时的代码,见下面的调用函数如果没有代码则执行代码。此时输出结果完成2,继续返回到上次调用函数的位置,输出结果完成3,当所有代码执行完毕,返回到原来调用函数的位置第一次,也就是13行的第一次。2.递归案例-计算数字累加要求:定义一个函数sum_numbers,可以接收num的整数参数,计算1+2+...num的结果示例代码:defsum_numbers(num):#1.导出ifnum==1:return1#2.数字累加num+(1...num-1)#假设sum_numbers可以正确处理1...num-1temp=sum_numbers(num-1)returnnum+temp#result=sum_numbers(1)result=sum_numbers(100)print(result)执行结果:核心重点是这部分:已经做了一个假设上面的执行流程示意图:提示:递归是一种编程技巧,递归第一次会觉得有点吃力,处理的时候不确定循环条件的时候特别有用,比如遍历整个文件目录结构。以上就是递归函数的相关介绍。后面我们会介绍面向对象。这也是编程语言中的一个重难点知识点。可能文字教程不会很清楚,不过python自学网也有Python视频教程。文章参考来源:python自学网www.wakey.com.cn/
