首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python:递归统计文件夹和子文件夹中的所有文件类型和大小

递归统计文件夹和子文件夹中的所有文件类型和大小是一个常见的需求,可以通过使用Python编程语言来实现。下面是一个完善且全面的答案:

递归统计文件夹和子文件夹中的所有文件类型和大小的步骤如下:

  1. 导入必要的模块:
代码语言:txt
复制
import os
  1. 定义一个函数来递归遍历文件夹:
代码语言:txt
复制
def count_files(folder_path):
    file_types = {}
    total_size = 0

    for root, dirs, files in os.walk(folder_path):
        for file in files:
            file_path = os.path.join(root, file)
            file_size = os.path.getsize(file_path)
            total_size += file_size

            file_extension = os.path.splitext(file)[1]
            if file_extension in file_types:
                file_types[file_extension] += 1
            else:
                file_types[file_extension] = 1

    return file_types, total_size
  1. 调用函数并打印结果:
代码语言:txt
复制
folder_path = '路径/到/文件夹'
file_types, total_size = count_files(folder_path)

print("文件类型统计:")
for file_extension, count in file_types.items():
    print(file_extension, ":", count)

print("总文件大小:", total_size, "字节")

这段代码将会递归地遍历指定文件夹及其子文件夹中的所有文件,并统计每种文件类型的数量和总文件大小。最后,它会打印出文件类型统计和总文件大小。

这个功能可以在许多场景中使用,例如在文件管理系统中统计不同类型文件的数量和总大小,或者在备份系统中检查备份文件的大小。

腾讯云相关产品和产品介绍链接地址:

  • 对象存储 COS:腾讯云提供的高可靠、低成本的对象存储服务,适用于存储和管理大量非结构化数据。
  • 云服务器 CVM:腾讯云提供的弹性计算服务,可快速部署云服务器,满足不同业务需求。
  • 云函数 SCF:腾讯云提供的事件驱动的无服务器计算服务,可帮助开发者更轻松地构建和管理应用程序。
  • 云数据库 CDB:腾讯云提供的高性能、可扩展的关系型数据库服务,支持多种数据库引擎和存储引擎。

请注意,以上产品仅作为示例,实际选择产品应根据具体需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

python 如何删除文件夹所有文件文件夹

前言 删除文件夹所有的文件,以及文件下所有的文件,把这个文件夹全部删除。...(dir_path): """ 递归删除文件夹下文件文件夹文件,不会删除空文件夹 :param dir_path: 文件夹路径 :return: """.../data') 上面代码删除时候,如果想保留我们文件夹以及文件夹,仅仅只删除文件,可以去掉这句 # 递归删除空文件夹 if os.path.exists(dir_path):...blog:https://www.cnblogs.com/yoyoketang/ def delete_dir2(dir_path): # os.walk会得到dir_path下各个后代文件夹其中文件三元组列表...wx:283340479 # blog:https://www.cnblogs.com/yoyoketang/ def delete_dir_file(dir_path): """ 递归删除文件夹下文件文件夹文件

45410
  • ExcelVBA文件操作-获得文件夹所有文件夹

    ExcelVBA文件操作-获得文件夹所有文件夹 图片 上一期,学习了 今天我们来学习如果取得文件夹文件夹路径 如图 图片 在我们可以先用上一节选择取得【test目录】 再读取【1目录、2...Show 方法显示对话框,并且返回 -1(如果您按 OK) 0(如果您按 Cancel)。...Set fs = CreateObject("Scripting.FileSystemObject") 返回一个对象 对象中有一个方法:GetFolder方法 可返回fs对象对象...Folder对象中有一个属性是: SubFolders 可返回文件夹文件夹 例如: Sub ShowFolderList(folderspec) Dim fs, f,...1 Loop Until sDic.Count = n GetAllPath = sDic.keys End Function 【主程序如下】 Sub yhd_ExcelVBA获得文件夹所有文件夹

    3.1K40

    ExcelVBA文件操作-获得文件夹所有文件夹

    ExcelVBA文件操作-获得文件夹所有文件夹 上一期,学习了 今天我们来学习如果取得文件夹文件夹路径 如图 在我们可以先用上一节选择取得【test目录】 再读取【1目录、2目录、3目录...Show 方法显示对话框,并且返回 -1(如果您按 OK) 0(如果您按 Cancel)。...fs = CreateObject("Scripting.FileSystemObject")返回一个对象 对象中有一个方法:GetFolder方法可返回fs对象对象:Folder...Folder对象中有一个属性是: SubFolders可返回文件夹文件夹例如:Sub ShowFolderList(folderspec) Dim fs, f, f1, fc,...+ 1 Loop Until sDic.Count = n GetAllPath = sDic.keys End Function 【主程序如下】 Sub yhd_ExcelVBA获得文件夹所有文件夹

    58420

    删除指定文件夹及其文件夹所有文件,但保留文件夹

    excelperfect 标签:VBA 经常要整理电脑中文件,特别是每当要自查电脑文件时。每次都是将一个一个文件夹打开,将其中文件全部删除,但要保留文件夹,以便于后面再陆续存放新文件。...手动操作起来每繁琐,特别是当文件夹及其文件夹很多且里面的文件也较多时。 其实,这样工作使用VBA来很好解决。...下面的程序会删除指定文件夹所有文件,包括其文件夹文件,但会保留文件夹,即保留文件夹框架,以便再往里面存放新文件。...Sub KillFiles(strPath As String, Optional blnRecursive As Boolean) ' 本过程返回目录所有文件到Dictionary对象....' 如果递归调用则同时返回文件夹所有文件.

    46110

    VBA实用小程序72:遍历文件夹文件夹文件

    很多时候,我们都想要遍历文件夹每个文件,例如在工作表列出所有文件名、对每个文件进行修改。VBA给我们提供了一些方式:(1)Dir函数;(2)File System Object。...图1 后期绑定 后期绑定不需要任何特定操作来启用FSO库,确保在VBA代码需要时打开库。 遍历文件夹所有文件 下面的示例代码将文件名打印到立即窗口,很容易修改这些代码以更适合你具体情况。...方法1:使用Dir函数 Sub LoopAllFilesInAFolder() '遍历文件夹所有文件 Dim fileName As Variant fileName =Dir...当文件存储在文件夹时,可能就需要一些技巧了。...现在需要找到一种方法来钻取到这些文件夹。我们将使用上述相同DirFSO方法。为了确保这些代码可以处理任意数量文件夹,宏实际上会调用自身(一种称为递归技术)。

    10.4K30

    使用Python统计下桌面某个文件夹下(含多层文件夹)具体文件数量(方法四)

    一、前言 前几天在Python最强王者群【东哥】问了一个Python自动化办公问题,一起来看看吧。这个是他自己在实际工作遇到需求,正好遇到了这个问题,想着用Python来实现下。...二、实现过程 继续接上一篇文章,【瑜亮老师】针对【巭孬嫑勥烎】代码,进行了优化,优化后代码如下所示: # 获取文件夹所有层级内文件名(绝对路径),包括没有后缀名文件 all_files = [...不过针对该问题,方法还是很多,下一篇文章,我们继续看另外一个方法,敬请期待! 其实这里还可以继续优化下,但是会有潜在风险,在上一篇文章已经说明了,这里就不再赘述了。...这篇文章主要盘点了一个Python自动化办公问题,文中针对该问题,给出了具体解析代码实现,帮助粉丝顺利解决了问题。...最后感谢粉丝【东哥】提问,感谢【瑜亮老师】、【巭孬嫑勥烎】给出思路代码解析,感谢【莫生气】、【郑煜哲·Xiaopang】等人参与学习交流。

    23330

    使用Python统计下桌面某个文件夹下(含多层文件夹)具体文件数量(方法一)

    一、前言 前几天在Python最强王者群【东哥】问了一个Python自动化办公问题,一起来看看吧。这个是他自己在实际工作遇到需求,正好遇到了这个问题,想着用Python来实现下。...pathlib.glob()来进行解决,后来他自己找到了一个方法,如下所示: import os filePath = r"C:\Users\pdcfi\Desktop\UPF终验报告\res\upf" # 获得当前文件夹路径...: dir_count += 1 # 统计文件夹文件夹总个数 for _ in files: file_count += 1 # 统计文件夹文件总个数...这篇文章主要盘点了一个Python自动化办公问题,文中针对该问题,给出了具体解析代码实现,帮助粉丝顺利解决了问题。...最后感谢粉丝【东哥】提问,感谢【郑煜哲】给出思路代码解析,感谢【巭孬嫑勥烎】等人参与学习交流。

    23220

    使用Python统计下桌面某个文件夹下(含多层文件夹)具体文件数量(方法二)

    一、前言 前几天在Python最强王者群【东哥】问了一个Python自动化办公问题,一起来看看吧。这个是他自己在实际工作遇到需求,正好遇到了这个问题,想着用Python来实现下。...二、实现过程 上一篇文章已经分享了一个方法,这一篇文章继续分享另外一个方法,由【小王子】提供,如下所示: import os def count_files(path): count =...0 for root, dirs, files in os.walk(path): count += len(files) return count # 指定文件夹路径...这篇文章主要盘点了一个Python自动化办公问题,文中针对该问题,给出了具体解析代码实现,帮助粉丝顺利解决了问题。...最后感谢粉丝【东哥】提问,感谢【小王子】给出思路代码解析,感谢【巭孬嫑勥烎】等人参与学习交流。

    21130

    使用Python统计下桌面某个文件夹下(含多层文件夹)具体文件数量(方法五)

    一、前言 前几天在Python最强王者群【东哥】问了一个Python自动化办公问题,一起来看看吧。这个是他自己在实际工作遇到需求,正好遇到了这个问题,想着用Python来实现下。...= [i.is_file() for i in p] # 统计文件夹文件总个数 file_counts = sum(file_list) # 统计文件夹文件夹总个数 dir_counts =...这里再深入探讨下,如下图所示:原理就是下图中简单公式:用总数-文件夹个数=文件数。 针对文件数和文件夹数量。 最后给大家补充下【逸】分享知识,如下图所示: 三、总结 大家好,我是皮皮。...这篇文章主要盘点了一个Python自动化办公问题,文中针对该问题,给出了具体解析代码实现,帮助粉丝顺利解决了问题。...最后感谢粉丝【东哥】提问,感谢【瑜亮老师】、【巭孬嫑勥烎】给出思路代码解析,感谢【莫生气】、【郑煜哲·Xiaopang】等人参与学习交流。

    26030

    使用Python统计下桌面某个文件夹下(含多层文件夹)具体文件数量(方法三)

    一、前言 前几天在Python最强王者群【东哥】问了一个Python自动化办公问题,一起来看看吧。这个是他自己在实际工作遇到需求,正好遇到了这个问题,想着用Python来实现下。...二、实现过程 上一篇文章已经分享了一个方法,这一篇文章继续分享另外一个方法,由【巭孬嫑勥烎】提供,如下所示: import pathlib list_path=pathlib.Path(path)....rglob("*.*") print(len(list(list_path))) 看上去代码非常简洁,顺利地解决了粉丝问题。...这篇文章主要盘点了一个Python自动化办公问题,文中针对该问题,给出了具体解析代码实现,帮助粉丝顺利解决了问题。...最后感谢粉丝【东哥】提问,感谢【巭孬嫑勥烎】、【瑜亮老师】给出思路代码解析,感谢【小王子】、【莫生气】等人参与学习交流。

    16240

    学习笔记 | Pythonlinux分别怎么遍历文件夹文件

    前言 当我们进行批量处理时经常会碰到想要找文件夹特定文件而不得不一个个文件夹翻找情况 那么我们学会使用glob匹配方便就能快速得到想要文件列表 下面开始实验吧 假定我们要找批量以gz为后缀文件...这要求我们对文件结构比较熟悉,我们指定在input下第四层文件夹gz文件 In [2]: import glob wenjian = glob.glob('/home/mw/input/*/*...home/mw/input/wrablib9842/wradlib-data-main/wradlib-data-main/misc/bin_coords_fbg.gz find 用于搜索指定目录层次结构文件.../home/mw/input/ 指定 find 查找文件目录(及其子目录) -type f 将搜索限制为仅文件,不包括目录。...-name 指定匹配文件名 插播寻物启事 师兄于太古里丢失鹦鹉一只,请见到者拨号114514。另外,师兄不同意鹦鹉对课题组看法。

    8110

    Python读取文件夹所有Excel文件名

    【知识点一】 Python os.walk() 方法 概述 os.walk() 方法用于通过在目录树中游走输出在目录文件名,向上或者向下。...root 所指的是当前正在遍历这个文件夹本身地址 dirs 是一个 list ,内容是该文件夹所有的目录名字(不包括子目录) files 同样是 list , 内容是该文件夹所有的文件(不包括子目录...如果 topdown 参数为 True,walk 会遍历top文件夹,与top 文件夹每一个子目录。 onerror -- 可选,需要一个callable 对象,当 walk 需要异常时,会调用。...返回值 返回指定路径下文件和文件夹列表。...os.listdir() 方法用于返回指定文件夹包含文件或文件夹名字列表。这个列表以字母顺序。它不包括 '.' '..' 即使它在文件夹

    6.8K10

    pycharm创建flask项目没有文件夹app文件_python flask框架

    ,在弹出对话框,我们可以看到很多案例,Flask、Django等等,我们选择Flask创建Flask项目。...run():Flask类run()方法在服务器上运行应用程序 app.run(host, port, debug, options) #所有参数都是可选,hots默认127.0.0.1(localhost...,变量可以传多个 Request对象重要属性如下所列: Form – 它是一个字典对象,包含表单参数及其值值对。...args – 解析查询字符串内容,它是问号(?)之后URL一部分。 Cookies – 保存Cookie名称字典对象。 files – 与上传文件有关数据。...py文件 备注:有__init__.py文件文件夹python包,没有__init__.py文件为目录 这样就完成了创建Flask项目。

    1.8K20

    linux显示所有文件大小,显示文件夹下文件个数,hadoop命令查看文件夹个数命令,模糊查询

    /company -type f | wc -l       查看某文件夹下文件个数,包括文件夹。       ...ls -lR|grep “^-“|wc -l       查看某文件夹文件夹个数,包括文件夹。       ...Linux查看文件夹大小       du -sh 查看当前文件夹大小       du -sh * | sort -n 统计当前文件夹(目录)大小,并按文件大小排序       du -sk filename...查看指定文件大小 df -g 以G为单位查看系统目录内存情况 统计文件大小 du -h  磁盘使用率:du -h 在hadoop命令查看文件夹个数命令: hadoop fs -ls / |grep...“^-“|wc -l 打印所有文件夹文件个数 hadoop fs -ls -R |grep “^-“|wc -l hadoop下显示文件大小 hadoop fs -du / 命令其实同linux

    4K20

    盘点4种使用Python批量合并同一文件夹所有文件夹Excel文件内所有Sheet数据

    二、项目目标 用Python实现多Excel、多Sheet合并处理,针对现实切确需求,使用Python批量合并同一文件夹所有文件夹Excel文件内所有Sheet数据,这个需求在现实生活还是挺常见...需要注意是代码第6行第7行,获取文件路径,其中**代表文件夹文件递归。...4、方法四 下面这个代码是【小小明大佬】手撸另外一个代码,使用了sheet_name=None列表extend()方法,将sheet_name=None这个参数带上,代表获取Excel文件所有...需要注意是代码第6行第7行,获取文件路径,其中**代表文件夹文件递归。...六、效果展示 1、处理前Excel数据: 2、运行进度提示: 3、合并后结果: 七、总结 本文从实际工作出发,基于Python编程,介绍了4种方法,实现批量合并同一文件夹所有文件夹

    4.9K50
    领券