Python代码报错AttributeError: 'module' object has no attribute 'Serial'求助
解决AttributeError: 'module' object has no attribute 'Serial'问题
嘿,我之前也踩过这个坑!你遇到的这个错误大概率是模块安装错了,或者本地文件重名干扰了导入,下面给你一步步捋清楚解决办法:
先排查模块安装的问题
Python里真正用于串口通信的模块是pyserial,但很多新手会误装一个叫serial的无关包——这个包根本没有Serial类!可以按以下步骤修正:
- 先卸载错误的
serial包:pip uninstall serial - 再安装正确的
pyserial模块:pip install pyserial
检查本地文件重名的干扰
虽然你的脚本名叫rc_control_test.py,但如果当前项目目录下存在serial.py或者serial.pyc这类文件,Python会优先导入本地的这个文件,而不是系统里的pyserial模块。你可以:
- 查看当前目录,删掉或重命名所有和
serial同名的文件/文件夹 - 打开Python终端验证导入路径,确认是不是本地文件在搞鬼:
如果输出的路径指向你本地的某个文件,说明就是重名问题,处理掉就好。import serial print(serial.__file__)
验证修复效果
修改完之后,你可以先在终端里简单测试一下:
import serial ser = serial.Serial('COM6', 9600)
如果不再报错,就说明问题解决啦,再重新运行你的rc_control_test.py脚本就行。
内容的提问来源于stack exchange,提问作者Marcus
相关产品推荐
相关产品推荐

