python - instalar - pyserial mac
pyserial: No hay módulo llamado herramientas (8)
He instalado la última versión de pySerial en mi caja de Ubuntu con python 2.7.2, y funciona bien para la mayoría de las cosas, pero cada vez que trato de importar el paquete de "herramientas", dice que no puede encontrar "herramientas". La documentación para pySerial hace referencia explícita a este paquete de ''herramientas''.
>>> from serial import tools
Traceback (most recent call last):
File "<pyshell#30>", line 1, in <module>
import serial.tools
ImportError: No module named tools
y cuando yo:
>>> serial.VERSION
''2.5''
¿Cuál es la última versión según Source Forge?
Entonces, ¿por qué no puedo acceder al paquete de herramientas de pySerial?
Desde la página web de pyserial: https://pyserial.readthedocs.io/en/latest/pyserial.html
Recomiendan que uses el comando: python -m pip install pyserial
Eso funcionó para mí. No sé lo suficiente sobre pip para entender la diferencia con solo un pyserial de instalación de pip regular, pero funcionó para mí (después de mucha frustración).
El pyserial-2.4-py2.7.egg en la carpeta site-packages se estaba importando en lugar de ser serial en la carpeta site-packages. Una vez que cambié el nombre de este archivo para que ya no se importara, funcionó bien. Usted puede fácilmente depurar esto haciendo
import serial
serial._ _path_ _
para ver desde dónde se importa la serie.
En caso de que hacer "pip install --upgrade" no funcione (como me ocurrió a mí), en Linux puede verificar si tiene un paquete serial en /usr/lib/python2.7/dist-packages
, el nuevo el paquete en serie que instala pip va a /usr/**local**/lib/python2.7/dist-packages/serial
, por alguna razón el de usr/lib/python2.7/
tiene prioridad y las herramientas del módulo No existe en esa versión de pyserial. Cambiar nombres o borrar el directorio resuelve el problema.
Llegué aquí porque tenía el mismo problema. Lo extraño fue que
import serial
trabajado, pero
from serial.tools import list_ports
no lo hice
Resulta que estúpido me llamó el script "serial.py". Después de renombrarlo todo funcionó.
Parece que el paquete de ubuntu no coincide exactamente con el upstream. compara el paquete oficial de pySerial en su SVN:
http://pyserial.svn.sourceforge.net/viewvc/pyserial/trunk/pyserial/serial/
al paquete de ubuntu en launchpad:
http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/raring/pyserial/raring/files/head:/serial/
Las herramientas también faltan allí. Parece que mantienen el script miniterm.py
, y lo instalan ... en algún lugar; Sin embargo, no estoy lo suficientemente versado en el empaquetado de Deb para entender dónde.
Tienes que llamar a las funciones del módulo de esta manera:
from serials import tools
Por ejemplo: si quiero llamar a la función sqrt
desde math
módulo math
, haría lo siguiente:
from math import sqrt
import math.sqrt **is wrong.**
Utilice pip
para instalar pyserial
. Primero instale pip:
sudo apt-get install python-pip
Después de eso instale pyserial
:
sudo pip install pyserial
sí, use python-pip install ,,,,, upgrade ,,, la versión de serie será 2.7 ... funciona