¿Hay alguna forma de pip
jugar bien con múltiples versiones de Python? Por ejemplo, quiero usar pip
para instalar cosas explícitamente en mi instalación del sitio 2.5 o en mi instalación del sitio 2.6.
Por ejemplo, con easy_install
, yo uso easy_install-2.{5,6}
.
Y sí, sé sobre virtualenv, y no, no es una solución a este problema en particular.
pip34
ypip35
?pip3.x
realmente administre la versión de Python en la que desea instalar paquetes (tal vez ejecutarpip3.x -V
para ver). O use la solución de @ Hugo para tener un mejor control sobre muchas versiones de Python.Respuestas:
La recomendación actual es usar
python -m pip
, ¿dóndepython
está la versión de Python que le gustaría usar? Esta es la recomendación porque funciona en todas las versiones de Python y en todas las formas de virtualenv. Por ejemplo:Respuesta anterior, dejada para la posteridad:
Desde la versión 0.8, Pip es compatible
pip-{version}
. Puedes usarlo igual queeasy_install-{version}
:EDITAR : pip cambió su esquema para usar en
pipVERSION
lugar depip-VERSION
en la versión 1.5. Debe usar lo siguiente si tienepip >= 1.5
:Consulte https://github.com/pypa/pip/pull/1053 para obtener más detalles.
Referencias
fuente
pip
través depip
/easy_install
oget-pip.py
no tiene python2.7. si tiene python2.7, intente:pip install --upgrade pip
y debería tenerpip
ypip-2.7
pip
se selecciona en función de la variable de entorno $ PATH. Si desea cambiar el programa pip "predeterminado", reordene la variable de entorno $ PATH. Busque algo como "variable de entorno de ruta linux" para obtener más detalles sobre $ PATH.En Windows, puede ejecutar el módulo PIP usando una versión de Python dado a través del lanzador Python ,
py.exe
si decide instalar durante la configuración de Python 3.Puede ser aún más específico y solicitar una subversión exacta de Python:
Para obtener una lista de todas las versiones de Python instaladas disponibles a través del iniciador, ejecute:
Alternativamente, puede iniciar el ejecutable Python deseado directamente:
fuente
python2
,python3
,pip2
ypip3
en Windows?/path/to/python2.{5,6} /path/to/pip install PackageName
no funcionaPara que esto funcione en cualquier versión de Python que no tenga pip ya instalado, debe descargar pip y hacer
python*version* setup.py install
. Por ejemplopython3.3 setup.py install
. Esto resuelve el error de importación en los comentarios. (Como lo sugiere @hbdgaf)fuente
python2.7 -m pip install PackageName
Tenía Python 2.6 instalado de forma predeterminada (Amazon EC2 AMI), pero necesitaba Python2.7 más algunos paquetes externos para mi aplicación. Suponiendo que ya instaló python2.7 junto con python predeterminado (2.6 en mi caso). Aquí se explica cómo instalar pip y paquetes para python2.7 no predeterminado
Instale pip para su versión de python:
Use una versión específica de pip para instalar paquetes:
fuente
python3 get-pip.py
y luego usando el comando pip conpip34 install example
Could not find a version that satisfies the requirement pip (from versions: ) No matching distribution found for pip
cuando lo intentépython2.6 get-pip.py
Me funcionó en Windows de esta manera:
Cambié el nombre de los archivos python python.py y pythonw.exe a python3.py pythonw3.py
Luego acabo de ejecutar este comando en el indicador:
python3 -m pip install package
fuente
Otras respuestas muestran cómo usar pip con Python 2.X y 3.X, pero no muestra cómo manejar el caso de múltiples distribuciones de Python (por ejemplo, Python original y Python Anaconda) .
Tengo un total de 3 versiones de Python: Python 2.7 original y Python 3.5 y Anaconda Python 3.5.
Así es como instalo un paquete en:
Python original 3.5 :
Python original 2.7 :
Anaconda Python 3.5 :
o
Más simple, ya que Anaconda anula los binarios originales de Python en el entorno del usuario.
Por supuesto, la instalación en anaconda debe hacerse con un
conda
comando, esto es solo un ejemplo.Además, asegúrese de que pip esté instalado para ese python específico. Es posible que necesite instalar manualmente pip. Esto funciona en Ubuntu 16.04:
o
fuente
Me encontré con este problema recientemente y descubrí que no estaba obteniendo el pip correcto para Python 3, en mi sistema Linux que también tiene Python 2.
Primero debe asegurarse de haber instalado pip para su versión de python:
Para Python 2:
Para Python 3:
Luego, para instalar paquetes para una versión de Python u otra, simplemente use lo siguiente para Python 2:
o para Python 3:
fuente
pip también es un paquete de python. Entonces, la forma más fácil de instalar módulos en una versión específica de Python sería a continuación
o
fuente
Entonces aparentemente hay múltiples versiones de
easy_install
ypip
. Parece ser un gran desastre. De todos modos, esto es lo que hice para instalar Django para Python 2.7 en Ubuntu 12.10:fuente
Desde aquí: https://docs.python.org/3/installing/
Aquí se explica cómo instalar paquetes para varias versiones que se instalan al mismo tiempo: linux, mac, posix :
En Windows , use el iniciador Py Python en combinación con el modificador -m:
fuente
pipenv
En Linux, Mac OS X y otros sistemas POSIX, use los comandos de Python versionados en combinación con el
-m
conmutador para ejecutar la copia adecuada depip
:(los comandos pip adecuadamente versionados también pueden estar disponibles)
En Windows, use el
py
iniciador de Python en combinación con el-m
interruptor:si obtiene un error
py -3.4
, intente:fuente
Instalación de múltiples versiones de Python y sus respectivos paquetes.
Versión de Python en la misma máquina Windows: 2.7, 3.4 y 3.6
Instalación de las 3 versiones de Python :
RUTA para las 3 versiones de Python :
Renombrar los ejecutables para las versiones :
Comprueba el símbolo del sistema con todas las versiones:
Instalar los paquetes por separado para cada versión
fuente
Si tiene varias versiones, así como múltiples arquitecturas (32 bits, 64 bits), deberá agregar un -32 o -64 al final de su versión.
Para Windows, vaya a cmd y escriba py --list y producirá las versiones que haya instalado. La lista se verá así:
El comando completo como ejemplo será:
Si desea obtener más profundidad, para instalar una versión específica de un paquete en una versión específica de python, use == (versión) después del paquete. Como ejemplo,
fuente
La mayoría de las respuestas aquí abordan el problema, pero quiero agregar algo que continuamente me confunde con respecto a la creación de una instalación alternativa de python en el
/usr/local
CentOS 7. Cuando instalé allí, parecía que pip funcionaba ya que podía usarpip2.7 install
y Instalaría módulos. Sin embargo, lo que no pude entender fue por qué mi versión recién instalada de python no veía lo que estaba instalando.Resulta en CentOS 7 que ya hay un python2.7 y un pip2.7 en la
/usr/bin
carpeta. Para instalar pip para su nueva distribución de python, necesita decirle específicamente a sudo que vaya a/usr/local/bin
Esto debería instalar pip2.7 en su
/usr/local/bin
carpeta junto con su versión de python. El truco es que cuando desea instalar módulos, debe modificar la$PATH
variable sudo para incluir/usr/local/bin
o debe ejecutarsi quieres instalar un nuevo módulo. Me llevó una eternidad recordar que
sudo
no estaba viendo de inmediato/usr/local/bin
.fuente
Aquí está mi opinión sobre el problema. Funciona para Python3. Las características principales son:
Los pasos son los siguientes:
Si tiene varias versiones adicionales de Python instaladas de alguna otra manera, deshágase de ellas, por ejemplo, elimine $ HOME / .local / lib / python3.x , etc. (también las instaladas globalmente). Sin embargo, no toques la versión predeterminada de python3 de tu sistema.
Descargue el código fuente para diferentes versiones de Python bajo la siguiente estructura de directorios:
En cada directorio "Python-3.xy /", haga lo siguiente (¡ NO use "sudo" en ninguno de los pasos!):
En "python_versions /" crea archivos como este:
Ahora, cada vez que desee optar por python3.x, haga
para entrar en el virtualenv
Mientras esté en virtualenv, instale sus paquetes de python favoritos con
Para salir de la versión virtualenv y python simplemente escriba "deactivate"
ACTUALIZAR
Parece que
--no-site-packages
está en desuso. Hay una solución fácil para esto: una vez que haya activado virtualenv, simplemente apunte la variable HOME env a otro lugar que no sea su directorio de inicio real, es decir:Una buena manera de hacer esto en general es:
ln -s $HOME/.local/lib/python3.6/site-packages/numpy $PWD/venv/lib/python3.6/site-packages/
export PYTHONPATH=
,export HOME=/some/other/dir
Ahora debería tener virtualenv aislado de forma personalizada.
fuente
Contexto: Archlinux
Acción:
Instalar python2-pip:
sudo pacman -S python2-pip
Ahora tienes pip2.7:
sudo pip2.7 install boto
Prueba (en mi caso necesitaba 'boto'):
ejecuta los siguientes comandos:
Éxito: sin error.
Salida: Ctrl+D
fuente
por ejemplo, si configura otras versiones (por ejemplo, 3.5) como predeterminadas y desea instalar pip para python 2.7:
fuente
Puede ir a, por ejemplo, C: \ Python2.7 \ Scripts y luego ejecutar cmd desde esa ruta. Después de eso, puede ejecutar pip2.7 instalar su paquete ...
Eso instalará el paquete para esa versión de Python.
fuente
Esto es probablemente lo completamente incorrecto (soy un novato de Python), pero entré y edité el archivo pip
fuente
Para Windows específicamente: \ path \ to \ python.exe -m pip install PackageName funciona.
fuente
para Blender:
fuente