Python计算文件夹中文件类型和数量

目标:

统计文件夹目录下的文件类型及数量,包括子文件夹,并用函数的方式来实现。

思路:

●打开指定的文件夹

● 获取到当前文件夹下面所有的文件

● 进行判断,如果判断为文件夹,则递归,如果判断为文件,则统计类型和计数。

●汇总显示

实现代码如下:

import os

#文件夹中的文件计数函数
def file_count(local_path, type_dict):
    global all_file_num                 # 声明全局变量
    file_list = os.listdir(local_path)  # 列出本地文件夹第一层目录的所有文件和目录
    for file_name in file_list:
        if os.path.isdir(os.path.join(local_path, file_name)):  # 判断是文件还是目录,是目录为真
            type_dict.setdefault("文件夹", 0)      # 如果字典key不存在,则添加并设置为初始值
            type_dict["文件夹"] += 1
            p_local_path = os.path.join(local_path, file_name)  # 拼接本地第一层子目录,递归时进入下一层
            file_count(p_local_path, type_dict)
        else:
            ext = os.path.splitext(file_name)[1]  # 获取到文件的后缀
            type_dict.setdefault(ext, 0)          # 如果字典key不存在,则添加并设置为初始值
            type_dict[ext] += 1
            all_file_num += 1                     # 计算总文件数量
    return all_file_num


if __name__ == '__main__':
    local_path = 'c:\\log'          #文件夹的路径
    type_dict = dict()              # 定义一个保存文件类型及数量的空字典
    all_file_num = 0                #计算本地总文件数
    file_count = file_count(local_path, type_dict)   # 运行函数,power by luotao

    # 打印文件类型以及数量
    for each_type in type_dict:
        print(f"文件类型为【{each_type}】的数量有:{type_dict[each_type]} 个")
    print(f"总文件数量为:{file_count}")

运行结果如下:

文件类型为【.log】的数量有:4 个
文件类型为【文件夹】的数量有:4 个
文件类型为【.txt】的数量有:13 个
文件类型为【.doc】的数量有:1 个
总文件数量为:18

进程已结束,退出代码为 0

如需转载请标明出处,luotao 20211109

  • 6
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

netlt

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值