Python---如何使用python遍历文件夹下的所有文件(输出所有文件夹以及文件)

算法思路:

在Python中我们一般使用os模块来操作文件夹或文件,os为Python的内置模块,使用时直接导入即可:os模块中有许多方法,

在这里需要使用的有listdir()---listdir ------- 返回对应目录下的所有文件(包含你所隐藏的文件),返回的结果是列表

abspath()---abspath(相对路径) ----- 返回的是相对路径所对应的绝对路径

isdir ------- 判断是Path(目录)

listdir ------- 返回对应目录下的所有文件(包含你所隐藏的文件), 注意:返回的结果是列表

join()---- 以特定的格式将一个可迭代的对象转换成字符串,Example: '.'.join(['ab', 'pq', 'rs']) ->

'ab.pq.rs'
isfile --------- 判断文件

方法一

仅仅是遇到文件夹输出,不会输出文件夹里面的文件夹或文件。若要遍历文件夹下的所有文件,请看方法二。

import os 
from os import path 
#定义一个函数
def scaner_file (url):
        #遍历当前路径下所有文件
        file  = os.listdir(url)
        for f in file:
            #字符串拼接
            real_url = path.join (url , f)
            #打印出来
            print(real_url)

#调用自定义函数
scaner_file("D:\\") 

 运行效果

Python---如何使用python遍历文件夹下的所有文件(输出所有文件夹以及文件)_第1张图片

方法二

遍历文件夹下的所有文件----在方法一的基础上改进(通过增加判断代码进行)

import os 
from os import path 


def scaner_file (url):
        file  = os.listdir(url)
        for f in file:
                real_url = path.join (url , f)
                if path.isfile(real_url):
                        print(path.abspath(real_url))
                        # 如果是文件,则以绝度路径的方式输出
                elif path.isdir(real_url):
                #如果是目录,则是地柜调研自定义函数 scaner_file (url)进行多次
                        scaner_file(real_url)
                else:

                        print("其他情况")
                        pass
                print(real_url)
scaner_file("D:\\")  

运行结果

Python---如何使用python遍历文件夹下的所有文件(输出所有文件夹以及文件)_第2张图片 注意;此时的运行结果显示拒绝访问------自身电脑权限问题(跳过无法访问的文件夹

你可能感兴趣的:(python,开发语言,后端)