欢迎光临
我们一直在努力

文件大小:统计当前目录下每个文件的大小

"""
文件大小
统计当前目录下每个文件的大小,
如果遇到文件夹,则进入文件夹继续统计。
"""
import os

def __statistics(cur_dir, result):
    """
    遍历指定目录及其子目录,统计每个文件的大小。

    :param cur_dir: 当前正在处理的目录
    :param result: 一个字典,用于存储文件名及其大小
    :return: 无
    """
    # 列出当前目录下的所有文件和目录
    files = os.listdir(cur_dir)

    # 遍历每个文件或目录
    for file in files:
        # 构建完整文件路径
        file_path = os.path.join(cur_dir, file)

        # 判断当前项是否为目录
        if os.path.isdir(file_path):
            # 是目录,则递归处理该目录
            # 递归处理子目录
            sub_dir = os.path.join(cur_dir, file)
            __statistics(sub_dir, result)
        else:
            # 是文件,则统计文件大小并添加到结果中
            # 计算文件大小并存储到结果字典中
            result[file] = os.path.getsize(file_path)

    # 返回统计结果
    return result

def statistics(begin):
    """
    主函数,用于启动文件大小统计。

    :param begin: 统计的起始目录
    :return: 无
    """
    # 初始化一个空字典,用于存储文件统计结果
    result = {}

    # 更改当前工作目录到指定的开始目录
    os.chdir(begin)

    # 获取当前工作目录的路径,作为开始目录的绝对路径
    begin = os.getcwd()

    # 调用__statistics函数,对开始目录进行统计,结果存储在result字典中
    r = __statistics(begin, result)

    # 遍历统计结果中的文件,按文件名排序
    for file in sorted(r):
        # 输出每个文件的名称和大小
        # 按文件名排序后,打印每个文件的大小
        print(f'文件【{file}】的大小为{r[file]}bytes。')

# 从当前目录的父目录开始统计文件大小
statistics('..')
赞(0) 打赏
未经允许不得转载:创想未来 » 文件大小:统计当前目录下每个文件的大小

评论 抢沙发

评论前必须登录!

 

更好的Python学习

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

联系我们联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册