web-dev-qa-db-fra.com

Windows signale une erreur en essayant d'installer un paquet à l'aide de pipenv

J'ai installé pipenv en suivant les instructions ici . À partir de l'invite de commande Windows que j'ai exécutée

pip install --user pipenv

qui a renvoyé le message

Successfully installed pipenv-5.3.3

Maintenant, je veux installer le paquet requests en utilisant pipenv, alors j’ai lancé

pipenv install requests

mais cela est revenu

'pipenv' is not recognized as an internal or external command,
operable program or batch file.

J'ai ajouté le chemin

C:\Users\Robert\AppData\Roaming\Python\Python35\site-packages

à la variable d’environnement de chemin Windows, mais je reçois toujours la même erreur ... Comment puis-je installer le paquet requests à l’aide de pipenv?


EDIT: Comme j'ai des restes de Python 3.5 et Python 3.6 sur mon système, je vais tout désinstaller et tout recommencer. (Je viens juste de commencer à apprendre Python et je veux que cela soit aussi simple que possible.)

10
Robert

J'ai une configuration similaire et suis confronté à un problème similaire, mais la solution que j'ai trouvée était assez simple. Toutes mes variables PATH étaient déjà correctes (à partir de Python 3, Windows Installer effectue automatiquement tout cela).

Le problème

Le problème se pose en fait à cause des installations conflicting de virtualenv .

Réparer

Pour résoudre ce problème, vous devez simplement exécuter les commandes suivantes:

  1. Tout d’abord, supprimez votre version actuelle de virtualenv: pip uninstall virtualenv

  2. Ensuite, supprimez votre version actuelle de pipenv: pip uninstall pipenv

  3. Quand on vous demande Proceed (y/n)?, entrez simplement y. Cela vous donnera une ardoise vierge.

  4. Enfin, vous pouvez à nouveau installer pipenv et ses dépendances: pip install pipenv

Cela installera également la dernière version de virtualenv .

Tester si cela a fonctionné

Entrez simplement pipenv --version dans la commande Invite et vous devriez voir le résultat souhaité.

Remarques

Je sais que cela semble banal, mais c'est en fait la solution pour les systèmes Windows. Vous n'avez pas besoin de modifier les variables d'environnement de votre système ( veuillez ne pas ajouter de site-packages à vos variables d'environnement ).

J'espère que cela t'aides!

33
Srivats Shankar

Parfois, l’installation de packages avec pip ne mettra pas les raccourcis de terminal en place mais s’installe quand même comme module python. Lorsque cela se produit, vous pouvez utiliser python -m pipenv (ou la commande que vous utilisez pour exécuter python à partir du terminal) afin d’exécuter le module au lieu d’utiliser un raccourci.

Pour référence lorsque j’ai installé pipenv sur mon mac, la commande de terminal ouverte dans un éditeur de texte ressemble à ceci:

#!/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6

# -*- coding: utf-8 -*-
import re
import sys

from pipenv import cli

if __== '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
    sys.exit(cli())

il supprime donc .pyw ou .exe du nom de l'exécutable puis appelle pipenv.cli.cli() Where en tant que module pipenv.__main__ qui est exécuté lors de l'utilisation de python -m pipenv ressemble à ceci:

from .cli import cli

if __== '__main__':
    cli()

Donc, il fait effectivement la même chose efficace.

5

Essayez d’ajouter ce qui suit à la variable d’environnement Path:

C:\Users\Robert\AppData\Roaming\Python\Python36\Scripts

à la place du \site-package, car c'est là que pipenv.exe est installé (du moins pour moi).

1
Serzhan Akhmetov

Au lieu de 

C:\Users\Robert\AppData\Roaming\Python\Python35\site-packages

cA devrait etre

C:\Users\Robert\AppData\Roaming\Python\Python36\Scripts

après cela, essayez fermeture et réouverture le terminal 

0
Charlie Heart