欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python基础之递归函数

程序员文章站 2022-06-19 15:06:54
# 递归满足的条件# 1.自己调用自己# 2.必须有一个明确的结束条件# 优点:逻辑简单\定义简单# 缺点:防止内存消耗过多,容易导致栈溢出,内存资源紧张,甚至内存泄漏事件发生# 求阶乘# 循环的方式...

python基础之递归函数

# 递归满足的条件
# 1.自己调用自己
# 2.必须有一个明确的结束条件
# 优点:逻辑简单\定义简单
# 缺点:防止内存消耗过多,容易导致栈溢出,内存资源紧张,甚至内存泄漏事件发生
# 求阶乘
# 循环的方式去实现
def jiecheng(n):
    result=1
    for item in range(1,n+1):
        result*=item
        pass
    return result #普通函数必须指定返回值
print('4的阶乘为{}'.format(jiecheng(4)))

python基础之递归函数

def diguijc(n):
    '''
    递归函数
     :param n:阶乘参数
    :return:
    '''
    if n==1:
        return 1
    else:
        return n*diguijc(n-1)
    pass
 # 递归调用
print('4的阶乘为{}'.format(diguijc(4)))

python基础之递归函数

python基础之递归函数

# 模拟实现树形结构的遍历
import os #引入文件操作模块
def findfile(file_path):
    listrs=os.listdir(file_path) # 得到该路径下所有和文件夹
    for fileitem in listrs:
        full_path=os.path.join(file_path,fileitem) #组合成为完整的文件路径
        if os.path.isdir(full_path): #判断是否是文件夹
            file_path(full_path) #如果是一个文件夹,再次递归
            pass
        else:
            print(fileitem)
            pass
        pass
    else:
        return
    pass
# 先给一个路径
findfile('c:\\users\\lxq\\desktop')

python基础之递归函数

python基础之递归函数

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注的更多内容!