更换新笔记本后Python读取Excel报OSError [Errno 22]无效参数问题
报错原因与解决方法
- 依赖库版本兼容问题:新旧电脑的pandas、Excel读取依赖库版本不一致是最常见诱因。高版本xlrd已取消对.xlsx格式的支持,你可以在读取第二个文件时指定使用openpyxl作为读取引擎,修改代码如下:
# 先执行 pip install openpyxl 安装依赖 Old= pd.read_excel(r"Z:\OA\Reena\COPY OF BI REPOSITORY\ALLOCATION\ALL OLD ACCOUNTS.xlsx",sheet_name="Based of acntDC til2018", engine='openpyxl')
如果修改后第一个文件也出现同类报错,给第一个read_excel也加上相同的engine参数即可。
- 共享盘文件锁定:该文件存储在公共共享盘内,若有其他用户正在打开编辑该文件,系统会对文件加锁,读取时会抛出无效参数错误。可确认文件是否被占用,或者将文件复制到本地磁盘后再尝试读取。
- sheet名称校验问题:部分Excel的sheet名称可能包含肉眼不可见的空格、特殊字符,旧版本读取库容错性更高不会触发异常,新版本严格校验会报错。可手动打开第二个Excel文件,复制实际sheet名称替换代码中对应的参数值,排除拼写和隐形字符问题。
- 长路径限制问题:Windows系统默认限制路径长度最长为260字符,若新电脑未开启长路径支持,文件完整路径超出长度限制时也会触发该错误。可打开注册表定位到
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,将LongPathsEnabled的值修改为1,重启电脑后重试。 - 共享盘连接异常:新电脑的共享盘映射不稳定可能导致文件读取失败,可直接在资源管理器中打开第二个文件确认是否能正常访问,若无法打开重新映射Z盘共享目录即可。
内容的提问来源于stack exchange,提问作者Sylron Fernandes
相关产品推荐
相关产品推荐

