2012-06-06 22 views
68

En Ubuntu 10.04 de forma predeterminada se instala Python 2.6, luego he instalado Python 2.7. ¿Cómo puedo usar pip install para instalar paquetes para Python 2.7.Instalar un módulo utilizando pip para la versión específica de python

Por ejemplo:

pip install beautifulsoup4 

por defecto instala BeautifulSoup para Python 2.6

Cuando hago:

import bs4 

en Python 2.6 funciona, pero en Python 2.7 que dice:

No module named bs4 
+0

https://docs.python.org/3.4/installing/ – alvas

Respuesta

34

Utilice una versión de pip instalada en la instancia de Python en la que desea instalar paquetes nuevos.

En muchas distribuciones, puede haber distintos python2.6-pip y python2.7-pip paquetes, invocados con nombres binarios como pip-2.6 y pip-2.7. Si pip no está empaquetado en su distribución para el objetivo deseado, puede buscar un paquete de herramientas de configuración o de fácil instalación, o usar virtualenv (que siempre incluirá pip en un entorno generado).

sitio web de pip includes installation instructions, si no puede encontrar nada en su distribución.

+3

no tengo ni pip-2.6 ni pip-2.7 – torayeff

+1

@torayeff ¿Buscas paquetes pip específicos de la versión? El empaquetado es específico de la distribución, por lo que tendrá que hacer una pequeña tarea usted mismo (buscar a través de los listados de paquetes disponibles) o consultar un canal de soporte específico para Ubuntu. –

+1

Intenté este easy_install -d /usr/local/lib/python2.7/ beautifulsoup4, pero no funciona, ¿qué quiere decir con legwork? – torayeff

64

alternativa, puesto que pip en sí está escrito en Python, sólo puede llamar con la versión de Python que desea instalar el paquete para:

python2.7 /usr/bin/pip install foo 
+1

Como estoy instalando con pip en un entorno virtual (pero necesito ejecutarlo contra el sistema python en algunos casos, con PYTHONPATH configurado, por ejemplo, cuando uso cualquier cosa que dependa de wxPython), este es el comando que funcionó para mí. –

+0

Finalmente obtuve mi solución, ¡Gracias! – ashim888

+1

¡MEJOR solución para todos los problemas de Python2 y Python3! –

4

Python 2

sudo pip2 install johnbonjovi 

Python 3

sudo pip3 install johnbonjovi 
+1

Esto no funciona cuando tienes varias instalaciones de 'python3'. Tengo '3.4' y' 3.5', y no puedo 'pip install' nada para' 3.4'. – byxor

37

Puede ejecutar módulo de pip para una versión específica de Python usando la pitón correspondiente:

Python 2.6:

python2.6 -m pip install beautifulsoup4 

Python 2,7

python2.7 -m pip install beautifulsoup4 
+1

Recorrí el internet muchas veces, buscando este comando. Supongo que la mayoría de la gente usa un entorno virtual para resolver este problema, pero para mí es una estrategia mucho más viable. –

+2

esta debería ser la respuesta aceptada :( –

+0

muy bien, señor! – Catbuilts

7

En Windows, se puede ejecutar el módulo de pepita mencionando la versión pitón (Debe asegurarse de que el iniciador esté en su ruta)

py -2 -m pip install pyfora 
11

Puede usar esta sintaxis

python_version -m pip install your_package 

Por ejemplo. Si está ejecutando python3.5, que nombró como "python3", y desea instalar el paquete numpy

python3 -m pip install numpy 
+0

Esto es como mi respuesta, pero mejor, ya que no necesita jugar con las rutas del sistema. – Turion

0

que tenía instalado Python 2.7 en Windows a través de chocolatey y encontré pip2.7.exe en C:\tools\python2\Scripts.

Usando este ejecutable en lugar del comando pip instalé el módulo correcto para mí (requests para Python 2.7).

4

Alternativamente, si desea instalar la versión específica del paquete con la versión específica del pitón, esta es la forma

sudo python2.7 -m pip install pyudev=0.16 

si el "=" no funciona, utilice ==

[email protected]:~$ sudo python2.7 -m pip install pyudev=0.16

Requisito no válido: 'pyudev = 0.16' = no es un operador válido. ¿Querías decir ==?

[email protected]:~$ sudo python2.7 -m pip install pyudev==0.16

funciona bien

0

me enfrentaba a un problema similar con otro paquete llamado Twisted. Quería instalarlo para Python 2.7, pero solo se instaló para Python 2.6 (versión predeterminada del sistema).

Haciendo un cambio simple funcionó para mí.

Al agregar la ruta de acceso de Python 2.7 a su variable $PATH, añádala al frente de esta manera: PATH=/usr/local/bin:$PATH, para que el sistema use esa versión.

Si se enfrenta a más problemas, puede seguir a esta entrada del blog que me ayudó - https://github.com/h2oai/h2o-2/wiki/installing-python-2.7-on-centos-6.3.-follow-this-sequence-exactly-for-centos-machine-only

3

Si tiene ambos 2.7 y 3.x versiones de Python instalado, entonces simplemente cambiar el nombre del archivo EXE de pitón pitón 3. x versión a algo así como - "python.exe" a "python3.exe". Ahora puede usar pip para ambas versiones individualmente. Si normalmente escribe "pip install", considerará la versión 2.7 de forma predeterminada. Si desea instalarlo en la versión 3.x, debe llamar al comando como "python3 -m pip install".

0

Para Python 3

sudo apt-get install python3-pip 
sudo pip3 install beautifulsoup4 

Para Python 2

sudo apt-get install python2-pip 
sudo pip2 install beautifulsoup4 

On Debian/Ubuntu, pip is the command to use when installing packages for Python 2, while pip3 is the command to use when installing packages for Python 3.

Cuestiones relacionadas