首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python:“AttributeError”对象没有“Serial”属性

Python:“AttributeError”对象没有“Serial”属性
EN

Stack Overflow用户
提问于 2012-07-10 06:09:25
回答 6查看 468.9K关注 0票数 153

我正在尝试使用运行Debian的Raspberry Pi上的Python2.6访问串口。我的脚本serial.py尝试导入pySerial:

代码语言:javascript
复制
import serial
ser = serial.Serial('/dev/ttyAMA0', 9600)
ser.write("hello world!")

由于某种原因,它拒绝建立串行连接,并出现以下错误:

代码语言:javascript
复制
AttributeError: 'module' object has no attribute 'Serial'

当我尝试在交互式Python解释器中输入相同的代码时,它仍然不起作用。

奇怪的是,它在几个小时前就能用了。

可能的问题是什么?我尝试修复这个问题已经有一段时间了,重新安装pySerial,重写代码,仔细检查串口,等等。

提前感谢!

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-07-10 06:21:47

您导入的是模块,而不是类。所以,你必须这样写:

代码语言:javascript
复制
from serial import Serial

您需要正确地安装serial模块:pip install pyserial

票数 127
EN

Stack Overflow用户

发布于 2012-08-09 05:19:11

我为和我犯同样错误的人添加了这个解决方案。

在大多数情况下:将项目文件重命名为'serial.py‘并删除序列。如果存在,则可以执行简单的’导入序列‘操作,而不会出现属性错误。

当您的python文件名为‘omething.py’时,当您导入'something‘时出现问题。

票数 211
EN

Stack Overflow用户

发布于 2017-10-30 21:27:01

我不小心安装了'serial‘(sudo python -m pip install serial)而不是'pySerial’(sudo python -m pip install pyserial),这导致了同样的错误。

如果前面提到的解决方案对您无效,请仔细检查是否安装了正确的库。

票数 167
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11403932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档