python - tutorial - ImportError después de una instalación exitosa de pip
framework django python (2)
Un par de puntos más:
- Verifique si está instalando la biblioteca en el virtualenv que desea usar.
-
Hay algunas bibliotecas cuyos nombres de paquete son diferentes del nombre de la biblioteca.
Puede echar un vistazo a su documentación en línea (google con la palabra clave
python <library>
generalmente mostrará la información) para ver si está importando el paquete correctamente.
Esta pregunta ya tiene una respuesta aquí:
He instalado con éxito una biblioteca con
pip install <library-name>
.
Pero cuando trato de importarlo, python genera
ImportError: No module named <library-name>
.
¿Por qué recibo este error y cómo puedo usar la biblioteca instalada?
TL; DR
: a menudo hay múltiples versiones de intérpretes de python y versiones de pip presentes.
El uso de
python -m pip install <library-name>
lugar de
pip install <library-name>
asegurará que la biblioteca se instale en el intérprete de python predeterminado.
Tenga en cuenta también:
desde mi experiencia personal, recomendaría no usar
sudo pip install
para instalar paquetes en el intérprete de python predeterminado del sistema.
Esto puede conducir a varios problemas desordenados.
Siempre que sienta la tentación de llamar a
pip
con
sudo
, compruebe primero si un
virtualenv
no es una mejor opción para usted.
La mayoría de los sistemas modernos incluyen múltiples intérpretes de Python. Cada intérprete mantiene su propio conjunto de paquetes instalados. Al instalar nuevos paquetes, es importante comprender en qué intérprete están realmente instalados esos paquetes.
En sistemas Unix, el shell se puede utilizar para comprender qué está sucediendo exactamente.
Al escribir
which -a python
muestran todos los intérpretes en su
PATH
.
La primera línea corresponde al intérprete que se utiliza cuando ejecuta
python
desde la línea de comandos.
/private/tmp/py32/bin/python
/usr/local/bin/python
/usr/bin/python
Cada versión pip pertenece exactamente a un intérprete.
which -a pip
muestra todas las versiones de pip.
Nuevamente, la primera línea es lo que se llamará cuando escriba
pip
en su shell.
/usr/local/bin/pip
/usr/bin/python
Tenga en cuenta que en este caso
python
pertenece al intérprete instalado en
/private/tmp/py32/
, pero
pip
instala en el intérprete
/usr/local/bin
.
Después de una instalación exitosa de una biblioteca, no podrá importarla en su intérprete de Python predeterminado.
Entonces, ¿cómo se importa la biblioteca instalada?
Su primera opción es iniciar el intérprete deseado con su ruta completa.
Entonces, si escribe
/usr/local/bin/python
, podrá importar la biblioteca.
La segunda opción, a menudo preferida, es invocar específicamente la versión correcta de pip.
Para hacerlo, puede usar
python -m pip install <library-name>
lugar de
pip install <library-name>
.
Esto llamará a la versión pip que pertenece a su intérprete de python predeterminado.