Pipenv: Comando no encontrado

8 minutos de lectura

Soy nuevo en el desarrollo de Python e intento usar pipenv. ejecuté el comando pip install pipenvque se ejecutó con éxito:

...
Successfully built pipenv pathlib shutilwhich pythonz-bd virtualenv-clone
Installing collected packages: virtualenv, pathlib, shutilwhich, backports.shutil-get-terminal-size, pythonz-bd, virtualenv-clone, pew, first, six, click, pip-tools, certifi, chardet, idna, urllib3, requests, pipenv
...

Sin embargo, cuando ejecuto el comando pipenv install en un directorio de proyecto raíz nuevo recibo el siguiente mensaje: -bash: pipenv: command not found. Sospecho que podría necesitar modificar mi .bashrc, pero no tengo claro qué agregar al archivo o si es necesario modificarlo.

  • Controlar /usr/local/bin/pipenv — ¿está ahí? Es /usr/local/bin en tus $PATH?

    – Doctor

    24/09/2017 a las 19:17

  • El mismo problema aquí: pipenv construido con éxito pero sin señales de la carpeta pipenv en /usr/local/bin .

    – aTerminado

    24/09/2017 a las 21:52


  • estas instalando pipenv globalmente?

    – dethos

    25 de septiembre de 2017 a las 0:32

  • Esta es una pregunta popular con muchas respuestas altamente votadas que recomiendan el uso de sudo; sin embargo, sudo es un peligroso comando que no debe ejecutarse sin una cuidadosa consideración. Por favor, no copie y pegue ciegamente las respuestas aquí.

    – kojiro

    13 mayo 2021 a las 14:56

  • Para Windows, 1. En Gitbash, haga esto y verifique los paquetes de ubicación. pip list -v y esto le dará la lista de paquetes y la ubicación en la que están instalados. 2. En el símbolo del sistema (cmd), ingrese PATH y verifique en la salida si c:\users\test\appdata\roaming\python\python36\Scripts o la ruta mencionada en la salida del primer comando está allí, si no está presente, actualice el sistema Variable de entorno. 3. Cierre el indicador de CMD y GIt Bash y verifique nuevamente, PIPENV debería funcionar ahora.

    – Brijesh

    5 de mayo a las 23:53

avatar de usuario
tuan ly

Esto me lo arregló:

sudo -H pip install -U pipenv

  • @Babbz77 La opción -H (HOME) para sudo solicita que la política de seguridad establezca la variable de entorno HOME en el directorio de inicio del usuario de destino (raíz de forma predeterminada) según lo especificado por la base de datos de contraseñas. La -U para pip install actualiza todos los paquetes especificados a la última versión disponible. El manejo de las dependencias depende de la estrategia de actualización utilizada.

    – Andrei Vaganov

    10 de marzo de 2018 a las 12:59


  • Gracias por esto

    – analista_47

    6 de diciembre de 2021 a las 17:06

  • El mismo comando con pip3 me funcionó “sudo -H pip3 install -U pipenv”

    –thusharaj

    14 de julio a las 3:15


avatar de usuario
dethos

Eso sucede porque no lo está instalando globalmente (en todo el sistema). Para que esté disponible en su path necesitas instalarlo usando sudocomo esto:

$ sudo pip install pipenv

  • para los copiadores y pegadores, este comando generalmente se ejecuta como sudo -H pip install -U pipenv (por ejemplo, en ubuntu), instalando pipenv en /usr/local/bin. La alternativa es una instalación de usuario, por ejemplo, $ pip install pipenvque es lo mismo que $ pip install --user pipenvque instala cosas en $HOME/.local/...requiriendo la PATH para modificarse como en la otra respuesta, stackoverflow.com/a/47111756/127971

    – Miguel

    29 de noviembre de 2017 a las 2:44

  • Sudo es peligroso y simplemente no es necesario para esto. La gente nunca debería correr sudo pip install en cualquier sitio. Lo más probable es que desee utilizar su administrador de paquetes, ya sea apt, homebrew o lo que sea. Por ejemplo, brew install pipenv funciona muy bien en macOS. Si su administrador de paquetes no tiene pipenv en su catálogo, entonces pip install --user es una alternativa razonable.

    – kojiro

    13 de mayo de 2021 a las 14:48

  • brew install pipenv es desanimado por los mantenedores

    – el nuevo james

    2 de abril a las 1:44

avatar de usuario
charlax

Si ha realizado una instalación de usuario, deberá agregar la carpeta correcta a su PATH variable.

PYTHON_BIN_PATH="$(python3 -m site --user-base)/bin"
PATH="$PATH:$PYTHON_BIN_PATH"

Ver instrucciones de instalación de pipenv

  • Esto fue útil, ya que necesitaba ejecutar pipenv runy las instrucciones de instalación me lo dijeron.

    – eksortso

    27 de febrero de 2018 a las 0:24

  • debes probar python3 -m site para ver si existe el directorio –user-base!

    –Claudio Santos

    15 de abril de 2018 a las 13:37

  • Esta es la manera correcta de sacudir la instalación local. ¡Gracias!

    – Jason R. Stevens CFA

    28 de diciembre de 2021 a las 16:37

avatar de usuario
usuario9563571

Intenté esto:

python -m pipenv  # for python2

python3 -m pipenv # for python3

tengo el mismo problema con pipenv en Mac OS X 10.13 High Seirra, otra Mac funciona bien. Uso Heroku para implementar mis servidores Django, algunos en 2.7 y otros en 3.6. Entonces, necesito 2.7 y 3.6. Cuando HomeBrew instala Python, sigue python apunta al original 2.7, y python3 apunta a 3.6.

El problema puede deberse a $ pip install pipenv. Revisé /usr/local/bin y pipenv no está allí. Entonces, probé una desinstalación completa:

$ pip uninstall pipenv

Cannot uninstall requirement pipenv, not installed
You are using pip version 9.0.1, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

$ pip3 uninstall pipenv
Skipping pipenv as it is not installed.

Luego reinstalar y funciona ahora:

$ pip3 install pipenv
Collecting pipenv

  • esto hizo que funcionara, ¡muchas gracias!

    – Federico Capaldo

    16 sep 2021 a las 14:22

avatar de usuario
hanxue

Dónde almacena Python los paquetes

Antes de saltar al comando que instalará pipenvvale la pena entender dónde pip instala paquetes de Python.

Paquetes de sitios globales es donde Python instala paquetes que estarán disponibles para todos los usuarios y todas las aplicaciones de Python en el sistema. Puede verificar el paquete del sitio global con el comando

python -m site

Por ejemplo, en Linux con Python 3.7, la ruta suele ser

/usr/lib/python3.7/dist-packages/setuptools

Paquetes de sitio de usuario es donde Python instala paquetes disponibles solo para ti. Pero los paquetes seguirán siendo visibles para todos los proyectos de Python que cree. Puedes obtener el camino con

python -m site --user-base

En Linux con Python 3.7, la ruta suele ser

~/.local/lib/python3.7/site-packages

Usando Python 3.x

En la mayoría de Linux y otros Unices, normalmente Python 2 y Python 3 se instalan uno al lado del otro. El ejecutable predeterminado de Python 3 es casi siempre python3. pip puede estar disponible como cualquiera de los siguientes, dependiendo de su distribución de Linux

pip3
python3-pip
python36-pip
python3.6-pip

linux

Evitar el uso de pip con sudo! Sí, es la forma más conveniente de instalar paquetes de Python y el ejecutable está disponible en /usr/local/bin/pipenv, pero también significa que el paquete específico siempre está visible para todos los usuarios y todos los proyectos de Python que cree. En su lugar, utilice paquetes de sitio por usuario con --user

pip3 install --user pipenv

pipenv está disponible en

~/.local/bin/pipenv

Mac OS

en mac OS, Homebrew es la forma recomendada de instalar Python. Puede actualizar fácilmente Python, instalar varias versiones de Python y cambiar entre versiones usando Homebrew.

Si está utilizando Python hecho en casa, pip install --user está desactivado. El paquete de sitio global se encuentra en

/usr/local/lib/python3.y/site-packages

y puede instalar paquetes de Python de forma segura aquí. Python 3.y también busca módulos en:

 /Library/Python/3.y/site-packages
 ~/Library/Python/3.y/lib/python/site-packages

ventanas

Por razones heredadas, Python está instalado en C:\Python37. El ejecutable de Python generalmente se llama py.exey puedes ejecutar pip con py -m pip.

Los paquetes del sitio global están instalados en

C:\Python37\lib\site-packages

Dado que normalmente no comparte sus dispositivos Windows, también está bien instalar un paquete globalmente

py -m pip install pipenv

pipenv ya está disponible en

C:\Python37\Scripts\pipenv.exe

No recomiendo instalar paquetes de Python en Windows con --userporque el directorio de paquete de sitio de usuario predeterminado está en su perfil móvil de Windows

C:\Users\user\AppData\Roaming\Python\Python37\site-packages 

El perfil móvil se utiliza en Servicios de Terminal Server (Escritorio remoto, Citrix, etc.) y cuando inicia/cierra sesión en un entorno corporativo. El inicio de sesión, el cierre de sesión y el reinicio lentos en Windows pueden deberse a un perfil de roaming grande.

  • esto hizo que funcionara, ¡muchas gracias!

    – Federico Capaldo

    16 sep 2021 a las 14:22

avatar de usuario
Jorge Mauer

CHICOS DE OSX, POR AQUÍ!!!

Como respondió @charlax (para mí, el mejor), puede usar un comando más dinámico para configurar PATH, pero para usuarios de mac esto no podría funcionara veces su ruta USER_BASE obtenida del sitio es incorrecta, por lo que debe averiguar dónde está su instalación de python.

$ which python3
/usr/local/bin/python3.6

obtendrá un enlace simbólico, luego necesita encontrar el enlace simbólico de la fuente.

$ ls -la /usr/local/bin/python3.6
  lrwxr-xr-x  1 root  wheel  71 Mar 14 17:56 /usr/local/bin/python3.6 -> ../../../Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6

(este ../../../ significa raíz)

Así que encontraste la ruta de python (/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6), entonces solo necesita ingresar ~/.bashrc de la siguiente manera:


export PATH="$PATH:/Library/Frameworks/Python.framework/Versions/3.6/bin"

  • Instalé python3 a través de Homebrew. cuando corría which python3 la salida fue /Cellar/python/3.7.7/bin/python3 el cual lo asigné a mi RUTA pero todavía “pipenv` no encontrado`. ¿Alguna idea?

    – Ozkan Serttas

    20 de abril de 2020 a las 2:57


¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad