You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何遍历名称含指定字符串的目录并统计对应目录下.mp4文件总大小

实现代码
from pathlib import Path

# 可自定义配置参数
root_dir = "C:\\Users\\你的根目录路径"  # 替换为你的上层根目录路径
folder_keyword = "2020"  # 文件夹名称需要包含的匹配字符串
target_file_suffix = ".mp4"  # 需要统计的文件后缀

total_file_size = 0

# 遍历根目录下所有子文件夹,筛选名称包含指定关键词的文件夹
for folder in Path(root_dir).rglob("*"):
    # 跳过非文件夹、名称不包含关键词的路径
    if not folder.is_dir() or folder_keyword not in folder.name:
        continue
    # 遍历当前符合条件文件夹下的所有文件
    for file_path in folder.rglob("*"):
        if file_path.is_file() and file_path.suffix.lower() == target_file_suffix:
            total_file_size += file_path.stat().st_size

print(f"总大小:{total_file_size} 字节")
# 如需转换为MB: print(f"总大小:{total_file_size / 1024 / 1024:.2f} MB")
# 如需转换为GB: print(f"总大小:{total_file_size / 1024 / 1024 / 1024:.2f} GB")
功能说明
  • 基于原有单文件夹统计逻辑扩展,新增文件夹自动筛选能力,无需手动指定单个文件夹路径
  • 支持自定义根目录、文件夹匹配关键词、统计文件后缀
  • 默认遍历根目录下所有层级的子文件夹,支持调整为仅统计一级子目录
  • 自动兼容大小写不同的MP4后缀,.MP4/.Mp4/.mp4格式文件均会被纳入统计
  • 输出结果默认以字节为单位,可通过注释中的方法转换为MB、GB等更易读的单位
调整方法

如果仅需要统计根目录下的一级子文件夹(不包含更深层级的子文件夹),将遍历文件夹的代码行:
for folder in Path(root_dir).rglob("*"):
替换为:
for folder in Path(root_dir).iterdir()即可。


内容的提问来源于stack exchange,提问作者sungliengk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 17:48:04