Python:递归遍历目录,统计目录大小,并以列表的形式返回所有py文件

# 递归遍历目录,统计目录大小,并以列表的形式返回所有py文件

import os
path = 'F:/qianfeng/python36/day08/nian'
dicList = []

def myTotalSize(path):
    # 全局变量dicList,存放py文件名
    global dicList

    # 存放目录字节数
    memory = 0

    # 当前目录下的文件列表
    fileList = os.listdir(path)

    for file in fileList:  # 以列表的形式返回该目录下的所有文件
        # print(file)
        newPath = os.path.join(path, file)  # 将每一个文件拼接成绝对路径
        # print(newPath)

        # 判断是否为目录
        if os.path.isdir(newPath):
            memory += myTotalSize(newPath)  # 累加每个目录的大小

        # 判断是否为文件
        elif os.path.isfile(newPath):
            # 判断是否为py文件
            if os.path.splitext(newPath)[1].upper() == '.PY':
                dicList.append(os.path.basename(newPath))
            memory += os.path.getsize(newPath)  # 累加每个文件的大小

    # 返回文件大小
    return memory


# 打印目录大小(总字节数)
print(myTotalSize(path))

# 打印py文件列表
print(dicList)

你可能感兴趣的:(Python:其他)