pd.read_excel报‘文件或目录不存在’错误,求助排查
问题分析与解决方案
核心问题排查
文件扩展名拼写错误
你输出的路径后缀是.xslx,但标准Excel文件的正确扩展名是.xlsx(注意字母顺序:x-s-lvsx-l-s)。这是最可能导致“文件不存在”的原因——实际文件是.xlsx,但代码生成的路径是错误的.xslx,系统自然找不到对应文件。路径拼接逻辑冗余导致重复目录
观察报错路径C:\\xxxx\\xxxx\\test_execution_status_details.xslx,出现了重复的目录段(xxxx重复),说明你的路径拼接逻辑有问题:os.path.dirname(os.path.realpath(sfile))已经获取了sfile所在的目录,再拼接sfile.strip()(如果sfile是完整路径的话),会导致目录重复拼接。
具体修复步骤
修正扩展名拼写
确认你的Excel文件实际扩展名是.xlsx,检查sfile变量的赋值是否写错了后缀,将.xslx改为.xlsx。简化路径拼接逻辑
根据sfile的实际类型调整:# 如果sfile是仅文件名(不带路径) path = os.path.join(os.getcwd(), sfile.strip()) # 如果sfile已经是完整文件路径 path = os.path.realpath(sfile.strip())添加路径验证步骤
在读取文件前先检查路径是否存在,便于快速定位问题:import os # ... 其他代码 ... path = os.path.realpath(sfile.strip()) print(path) if not os.path.exists(path): print(f"错误:路径不存在 -> {path}") exit(1) df = pd.read_excel(path)回退库版本验证(若怀疑更新导致)
如果确实是库更新引发的问题,可回退到之前正常运行的版本:# 回退pandas到指定稳定版本,例如1.5.3 pip install pandas==1.5.3 # 回退openpyxl(Excel读取引擎)到兼容版本 pip install openpyxl==3.0.10
内容的提问来源于stack exchange,提问作者user3375601
相关产品推荐
相关产品推荐

