Windows环境拼接UNC文件路径触发FileNotFoundError问题求解
路径拼接报错解决方案
问题根因
- 文件名不匹配:你定义的
path2变量和预期最终路径的文件名存在差异,path2缺少了_Sales_3069_WI2_2020_这段固定字符,直接拼接后和实际存在的文件名不一致。 - 多余空格问题:你拼接的路径中
Archive目录和后续文件名之间多了一个不必要的前置空格,导致路径指向错误。 - 手动拼接风险:直接用
+ "\\" +拼接Windows路径容易触发转义字符问题,跨场景兼容性差。
正确处理方法
建议优先使用编程语言内置的路径处理工具完成拼接,同时补全缺失的文件名字段,示例如下:
Python 实现示例
import os # 定义原始路径,加r前缀避免转义字符问题 path1 = r"\\ITSUSRAPADCON2\tm1\cons\grm_aspac\user_in\Manual Upload Current Plan\Archive" path2 = "Dev Finance GRM CONS ASPAC_GrsSalesAdj.csv_02_11_2021_18_41_03_1862" # 补全path2缺失的字段 full_base_name = path2.replace("_GrsSalesAdj.csv", "_Sales_3069_WI2_2020_GrsSalesAdj.csv") # 自动拼接路径,自动适配系统分隔符 final_path = os.path.join(path1, f"{full_base_name}_In.csv") # 推荐更简洁的pathlib写法 from pathlib import Path final_path = Path(path1) / f"{full_base_name}_In.csv"
如果运行后仍报错,可以打印final_path和实际文件的完整路径逐字符对比,确认拼写、特殊字符是否一致。
内容的提问来源于stack exchange,提问作者user17240949
相关产品推荐
相关产品推荐

