美文网首页
函数之递归函数

函数之递归函数

作者: endmoon | 来源:发表于2018-11-04 21:16 被阅读3次
#查找某个文件下的所有文件和目录
'''
1.os.listdir 用于列出所有目录和文件
2.os.isfile用于判断类型是否为文件
3.os.isdir用于判断类型是否为目录
    为目录时需要进入到目录,需要用到os.path.join(当前目录,子目录)


代码步骤:
1.输入一个路径(目录),这个作为函数的参数
def set_path(path):
2.列出该路径下的所有文件和目录,list_file中存放的是改目录下所有文件和目录
    list_file=os.listdir(path)
3.遍历该目录,获得子文件和目录
    for file in list_file:
4.得到该文件的绝对路径=path(当前目录路径)+file(该目录下的子文件或目录名)
    file_path=os.path.join(path,file)
5.判断该文件为文件还是目录,如果是文件,就打印该文件名
    if os.isfile(file_path):
        print(file)
6.判断该文件为文件还是目录,如果是目录,就把新的目录作为参数以递归函数的形式进行重复调用
    if os.isdir(file_path):
        set_path(file_path)
'''

import os
def set_path(path):
    list_file = os.listdir(path)
    for file in list_file:
        try:
            file_path = os.path.join(path, file)
            if os.path.isfile(file_path):
                print(file)
            if os.path.isdir(file_path):
                set_path(file_path)
        except(PermissionError,FileNotFoundError) as e:
            print("没有权限访问")

if __name__=="__main__":
    result=set_path('c:\\')
递归最核心的思想是:每一次递归,整体问题都要比原来减小,并且递归到一定层次时,要能直接给出结果!

每一个递归程序都遵循相同的基本步骤:

1.初始化算法。递归程序通常需要一个开始时使用的种子值(seed value)。可以向函数传递参数,或者提供一个入口函数,这个函数是非递归的,但可以为递归计算设置种子值。

2.检查要处理的当前值是否已经与基线条件相匹配(base case)。如果匹配,则进行处理并返回值。

3.使用更小的或更简单的子问题(或多个子问题)来重新定义答案。

4.对子问题运行算法。

5.将结果合并入答案的表达式。

6.返回结果。

相关文章

  • Day10递归函数、模块、迭代器、生成器

    一、递归函数 1、什么是递归函数 在函数中调用函数本身的函数就是递归函数。 2、递归的作用 循环能做的递归都能做 ...

  • day11 函数(3)

    递归函数 实际开发的时候,能不用递归就不用 什么是递归函数 函数中调用函数本身的函数就是递归函数 递归的作用: 循...

  • Python精简入门学习(十)

    Python精简入门学习之递归函数-递归 -递归 -如图所示

  • 函数之递归函数

  • day11-日常(递归函数、模块、迭代器、生成器)

    递归函数(实际开发的时候,能不用递归就不用) 1.什么是递归函数 函数中调用函数本身的函数就是递归函数 2.递归的...

  • 2019-01-07day11学习总结

    递归函数 实际开发的时候能不用递归就不用递归 1. 什么是递归函数 函数中调用函数本身的函数就是递归函数 2. 递...

  • 递归函数、模块、生成器、迭代器

    一、递归函数 实际开发的时候,能不用递归就不用 1.什么是递归函数 函数中调用函数本身的函数就是递归函数 2.递归...

  • day 11总结

    递归函数 实际开发的时候,能不用递归就不用1.什么是递归函数函数中调用函数本身的函数就是递归函数 2.递归的作用:...

  • Day11笔记

    实际开发的时候,能不用递归就不用 递归函数 1.什么是递归函数函数中调用函数本身的函数就是递归函数 2.递归的作用...

  • day11 生成器迭代器

    一、递归函数 1.什么是递归函数在函数中调用函数本身的函数就是递归函数 2.递归的作用:循环能做的事,递归都能做 ...

网友评论

      本文标题:函数之递归函数

      本文链接:https://www.haomeiwen.com/subject/rzmdxqtx.html