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

如何使用Python脚本检测两个不同文件夹中的缺失文件并输出提示信息

Python脚本:找出动态文件夹中缺失的文件

实现思路

  • 以**静态文件夹(Folder1)**的文件列表作为基准,因为它不会新增或删除文件
  • 获取**动态文件夹(Folder3)**的当前文件列表
  • 对比两个列表,筛选出基准列表存在但动态列表没有的文件,输出对应的缺失提示

完整代码

import os

def find_missing_files(static_folder, dynamic_folder):
    # 获取静态文件夹下的所有文件名,转成集合方便快速对比
    static_files = set(os.listdir(static_folder))
    # 获取动态文件夹下的所有文件名
    dynamic_files = set(os.listdir(dynamic_folder))
    
    # 计算两个集合的差集:静态有但动态没有的文件
    missing_files = static_files - dynamic_files
    
    # 循环输出缺失提示
    for file in missing_files:
        print(f"{file} 缺失于{os.path.basename(dynamic_folder)}")

if __name__ == "__main__":
    # 替换成你实际的文件夹路径(支持绝对路径/相对路径)
    STATIC_FOLDER = "./Folder1"  # 静态文件夹路径
    DYNAMIC_FOLDER = "./Folder3"  # 动态文件夹路径
    
    # 先检查文件夹是否存在,避免报错
    if not os.path.isdir(STATIC_FOLDER):
        print(f"错误:静态文件夹 {STATIC_FOLDER} 不存在,请检查路径")
    elif not os.path.isdir(DYNAMIC_FOLDER):
        print(f"错误:动态文件夹 {DYNAMIC_FOLDER} 不存在,请检查路径")
    else:
        find_missing_files(STATIC_FOLDER, DYNAMIC_FOLDER)

使用说明

  1. 修改代码里的STATIC_FOLDER和DYNAMIC_FOLDER为你实际的文件夹路径,比如Windows的C:/Users/xxx/Documents/Folder1,或者mac/Linux的/home/xxx/Folder1
  2. 运行脚本,就能自动输出所有缺失文件的提示信息

测试你的示例场景

如果Folder1包含File1.xlsx、File3.xlsx、File4.xlsx,Folder3只包含File1.xlsx、File3.xlsx,运行脚本后会输出:

File4.xlsx 缺失于Folder3

额外补充

如果需要对比包括子文件夹在内的所有文件,可以把获取文件列表的逻辑改成递归遍历(用os.walk),要是有这个需求我可以再调整代码~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 06:54:31