Winpython下Spyder执行import serial报OSError[Errno22]的解决求助
解决
import serial触发OSError: [Errno 22] Invalid argument的问题 以下是几个可行的排查和解决步骤:
检查pyserial版本兼容性
Python 3.11属于较新版本,旧版pyserial可能存在兼容性问题。执行以下命令重装适配版本:pip uninstall pyserial -y pip install pyserial==3.5 # 3.5是经测试兼容Python3.11的稳定版本,也可尝试最新稳定版修复Spyder环境冲突
Spyder自带的Python环境可能与全局环境存在依赖冲突。打开Spyder内置的终端(不是系统命令提示符),重新执行上述pyserial卸载和安装命令,确保模块安装在Spyder当前使用的环境中。如果使用Anaconda管理环境,先激活对应的Conda环境再操作。排查系统串口异常
- 打开Windows设备管理器,展开「端口(COM和LPT)」选项,检查是否存在带黄色感叹号的异常串口设备,右键禁用或卸载该设备。
- 若安装过虚拟串口软件(如Virtual Serial Port Driver),暂时关闭或卸载这类软件,避免串口资源冲突。
- 检查「Plug and Play」系统服务是否正常运行,若未启动则手动启动。
排除Spyder本身的问题
打开系统自带的Python终端(cmd中输入python),执行import serial命令。如果在此环境下正常导入,说明问题出在Spyder的配置上,可以尝试重置Spyder配置:在Spyder的「工具」→「偏好设置」→「应用程序」中选择「重置为默认设置」,重启后再测试。
内容的提问来源于stack exchange,提问作者Hol Wi
相关产品推荐
相关产品推荐

