pyserial: No module named tools
我已经用python 2.7.2在我的Ubuntu设备上安装了最新的pyserial,它在大多数情况下都可以正常工作,但是每当我试图导入"工具"包时,它都说它找不到"工具"。pyserial的文档明确引用了这个"工具"包。
1 2 3 4 5 | >>> from serial import tools Traceback (most recent call last): File"<pyshell#30>", line 1, in <module> import serial.tools ImportError: No module named tools |
当我:
1 2 | >>> serial.VERSION '2.5' |
根据source forge,哪个是最新版本
为什么我不能去Pyserial的"工具"包?
用
1 | sudo apt-get install python-pip |
安装完成后,安装
1 | sudo pip install pyserial |
我来这里是因为我有同样的问题。奇怪的是
1 | import serial |
工作,但
1 | from serial.tools import list_ports |
没有。
结果发现愚蠢的我把剧本命名为"serial.py"。重新命名后,一切正常。
site packages文件夹中的pyserial-2.4-py2.7.egg正在导入,而不是从site packages文件夹中的serial导入。一旦我重命名了这个文件,使它不再从此文件导入,它就可以正常工作了。您可以通过执行
1 2 | import serial serial._ _path_ _ |
查看序列号从何处导入。
看起来Ubuntu包与上游不太匹配。比较其SVN上的官方pyserial包:
http://pyserial.svn.sourceforge.net/viewvc/pyserial/trunk/pyserial/serial/
到LaunchPad中的Ubuntu包:
http://bazaar.launchpad.net/~ubuntu分支/ubuntu/raring/pyserial/raring/files/head:/serial/
工具也不见了。看起来他们保留了
在我的例子中,我在得到以下错误后安装了
1 | ImportError: No module named 'serial' |
当时江户十一〔11〕还可以,但江户十二〔12〕不行。
只有
希望能帮助像我这样的人。
如果"pip install--upgrade"不起作用(我也是这样),那么在Linux中,您可以检查在
是的,使用python pip install、、、then、、、upgrade、、、和,serial的版本将是2.7…它可以工作。
从pyserial网页:https://pyserial.readthedocs.io/en/latest/pyserial.html
他们建议您使用以下命令:python-m pip安装pyserial
这对我很有用。我对pip的了解还不足以理解它与普通的pip安装pyserial的区别,但是它对我很有效(在经历了很多挫折之后)。
您必须这样调用模块的函数:
1 | from serials import tools |
例如:如果我想从
1 2 3 | from math import sqrt import math.sqrt **is wrong.** |