2013-11-01 149 views
6

我“想要使用pyserial当我做下面的脚本串行进口蟒蛇

import serial 
ser= serial.serial("COM5", 9600) 
ser.write("Hello worldn") 
x = ser.readline() 
print(x)  

错误代码:。

c:\Python27>python com.py 
Traceback (most recent call last): 
    File "com.py", line 2, in <module> 
    ser= serial.serial("COM5", 9600) 
AttributeError: 'module' object has no attribute 'serial' 

我读了建议,并把它改为:

from serial import serial 
ser= serial.serial("COM5", 9600) 
ser.write("Hello worldn 
x = ser.readline() 
print(x)  

我现在得到错误

c:\Python27>python com.py 
Traceback (most recent call last): 
    File "com.py", line 1, in <module> 
    from serial import serial 
ImportError: cannot import name serial 

我读到,这可以从您的模块中有ini,但不知道有关此。

我打印我的sys.path和pyserial在那里。

['C:\\Users\\Jeff\\Desktop', 'C:\\Python27\\lib\\site-packages\\distribute-0.6.4 
9-py2.7.egg', 'C:\\Python27\\lib\\site-packages\\pyserial-2.7-py2.7.egg', 'C:\\W 
indows\\SYSTEM32\\python27.zip', 'C:\\Python27\\DLLs', 'C:\\Python27\\lib', 'C:\ 
\Python27\\lib\\plat-win', 'C:\\Python27\\lib\\lib-tk', 'C:\\Python27', 'C:\\Pyt 
hon27\\lib\\site-packages', 'C:\\Python27\\lib\\site-packages\\setuptools-0.6c11 
-py2.7.egg-info'] 

获得一种恼火的:(...感谢您的帮助

+0

是什么您的确切堆栈跟踪? – karthikr

+0

您收到的错误意味着您的解释器无法找到串行模块。您是否安装了它?您确定您有适当的权限使用它吗? –

+0

我安装了模块使用分布易于安装。该文件夹位于python27/lib-site-packages/pyserial-2.7-py2.7.egg/serial下。还添加了堆栈跟踪。 – jeffpkamp

回答

12

它应该是:

import serial 
ser = serial.Serial("COM5", 9600) 

注意在serial.Serial资本 'S'

+0

这似乎是它!至少错误消失了,我必须等到我回家后才能确定它实际上是在跟这个端口通话。Dang的大小写和缩进让我每次都感受到:)谢谢 – jeffpkamp

+1

import serial; help(serial) – greggo