macOS下使用PySerial遇模块属性错误问题求助
问题解决:PySerial 出现 AttributeError: partially initialized module 'serial' has no attribute 'Serial'
问题根源
你的脚本文件名是serial.py,和PySerial库的核心模块名重名了。Python导入模块时,会优先加载当前工作目录下的同名文件,而非你通过pip安装的PySerial库,进而引发循环导入错误,导致找不到Serial类。
解决步骤
- 重命名你的脚本文件,比如改为
serial_port_test.py,彻底避免和库名冲突。 - 删除当前目录下的
serial.pyc文件(如果存在),这是Python自动生成的编译缓存文件,不删除可能会残留问题。 - 重新运行脚本,优先使用普通用户权限执行(
python3 serial_port_test.py);如果提示串口权限不足,再执行chmod 666 /dev/tty.usbserial-130赋予读写权限,而非直接用sudo运行Python脚本(sudo可能会改变Python环境的依赖路径)。
内容的提问来源于stack exchange,提问作者user1667906
相关产品推荐
相关产品推荐

