1、什么是递归函数?
函数内部可以调用其他函数,如果函数调用它自己本身,那么这个函数就叫做递归函数。
2、举例
python递归函数输出嵌套列表的每个元素
思路:首先遍历这个列表,判断它的每个元素是否是list,这里用到instance(),如果这个元素数据类型是list,那么遍历并打印它的每一个元素,如果不是,那么调用函数继续做判断。
list1 = [1,[2,[3,[4,[5,[6,[7,[8,[9]]]]]]]]]
def get_list(my_list):
for item in my_list: #遍历每个元素
if isinstance(item,list): #做一个判断,判断该元素是否为列表类型
get_list(item) #如果是,那么就调用函数
else: #如果不是,就打印元素
print(item)
3、递归函数注意点
1、有一个明确的终止条件(没有的话不可以称之为递归函数)
2、更深一层递归时,问题的规模减小(一般前一次的输出是后一次的输入)
3、不要溢出栈