Python3 读取文件夹下所有的文件及目录 | 臭大佬

臭大佬 2020-09-02 16:37:00 282
Python 
简介 Python3 读取文件夹下所有的文件及目录 | 臭大佬

代码

# -*- coding:utf8 -*-
import os

allFileNum = 0


def printPath(level, path):
    '''
     打印一个目录下的所有文件夹和文件
    :param level: 文件夹级别
    :param path: 路径
    :return:
    '''
    global allFileNum
    # 所有文件夹,第一个字段是次目录的级别
    dirList = []
    # 所有文件  
    fileList = []
    # 返回一个列表,其中包含在目录条目的名称(google翻译)  
    files = os.listdir(path)
    # 先添加目录级别  
    dirList.append(str(level))
    for f in files:
        if (os.path.isdir(path + '/' + f)):
            # 排除隐藏文件夹。因为隐藏文件夹过多
            if (f[0] == '.'):
                pass
            else:
                # 添加非隐藏文件夹
                dirList.append(f)
        if (os.path.isfile(path + '/' + f)):
            # 添加文件
            fileList.append(f)
            # 当一个标志使用,文件夹列表第一个级别不打印
    i_dl = 0
    for dl in dirList:
        if (i_dl == 0):
            i_dl = i_dl + 1
        else:
            # 打印至控制台,不是第一个的目录  
            print('-' * (int(dirList[0])), dl)
            # 打印目录下的所有文件夹和文件,目录级别+1
            printPath((int(dirList[0]) + 1), path + '/' + dl)
    for fl in fileList:
        # 打印文件  
        print('-' * (int(dirList[0])), fl)
        # 随便计算一下有多少个文件
        allFileNum += 1


if __name__ == '__main__':
    printPath(1, 'E:/wwwroot/python/PyTest/qihuo/exel')
    print('总文件数 =', allFileNum)