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

合并Excel文件遇FileNotFoundError:无法读取目录中存在的文件

解决Excel文件合并时的FileNotFoundError问题

核心原因

你生成的文件列表仅包含文件名,没有拼接文件所在的完整路径,Python会默认在当前工作目录查找文件,导致找不到目标文件。

具体解决步骤

  1. 拼接完整文件路径
    在生成目标文件列表时,使用os.path.join()将文件夹路径与文件名拼接,确保每个元素都是完整的文件路径:

    import os
    import pandas as pd
    
    # 替换成你的Excel文件所在的文件夹完整路径
    target_folder = "D:/ExcelFiles"
    # 生成带完整路径的xlsx文件列表
    files_xls = [os.path.join(target_folder, filename) for filename in os.listdir(target_folder) if filename.endswith(".xlsx")]
    

    也可以用glob模块更简洁地获取带路径的文件:

    from glob import glob
    import pandas as pd
    
    target_folder = "D:/ExcelFiles"
    files_xls = glob(os.path.join(target_folder, "*.xlsx"))
    
  2. 执行合并(优化版)
    注意df.append()已被pandas弃用,推荐使用pd.concat()实现合并:

    df_collection = []
    for file_path in files_xls:
        sheet_data = pd.read_excel(file_path)
        df_collection.append(sheet_data)
    # ignore_index=True重置合并后的索引
    merged_df = pd.concat(df_collection, ignore_index=True)
    

额外排查点

  • 确认目标文件夹路径拼写正确,注意系统路径分隔符(Windows用\或/,Linux/macOS用/)
  • 检查文件是否确实存在于该路径下,未被移动、重命名或删除
  • 若路径包含特殊字符或空格,确保没有转义错误(使用os.path.join()可避免此问题)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 17:42:39