it-swarm.com.de

Windows meldet einen Fehler, wenn versucht wird, ein Paket mit pipenv zu installieren

Ich habe pipenv installiert, indem ich die Anweisungen hier befolgt habe. Von der Windows-Eingabeaufforderung aus lief ich

pip install --user pipenv

die die Nachricht zurückgegeben hat

Successfully installed pipenv-5.3.3

Jetzt möchte ich das Paket requests mit pipenv installieren, also lief ich

pipenv install requests

aber das kehrte zurück

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

Ich habe den Pfad hinzugefügt

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

auf meine Windows-Pfadumgebungsvariable, aber ich erhalte immer noch dieselbe Fehlermeldung ... Wie kann ich das Paket requests mit pipenv installieren?


BEARBEITEN: Da sich auf meinem System Reste von Python 3.5 und Python 3.6 befinden, werde ich alles deinstallieren und neu beginnen. (Ich habe gerade angefangen, Python zu lernen, und ich möchte das so einfach wie möglich halten.)

10
Robert

Ich habe ein ähnliches Setup und bin mit einem ähnlichen Problem konfrontiert, aber die Lösung, die ich fand, war ziemlich einfach. Alle meine PATH-Variablen waren bereits korrekt (ab Python 3 führt der Windows Installer dies automatisch aus).

Das Problem

Das Problem entsteht tatsächlich durch Konflikt Installationen von virtualenv .

Fix

Um dieses Problem zu beheben, müssen Sie einfach die folgenden Befehle ausführen:

  1. Entfernen Sie zunächst Ihre aktuelle Version von virtualenv: pip uninstall virtualenv

  2. Entfernen Sie dann Ihre aktuelle Version von pipenv: pip uninstall pipenv

  3. Wenn Sie nach Proceed (y/n)? gefragt werden, geben Sie einfach y ein. Dies gibt Ihnen eine saubere Schieferplatte.

  4. Schließlich können Sie noch einmal pipenv und seine Abhängigkeiten installieren: pip install pipenv

Dadurch wird auch die neueste Version von virtualenv installiert.

Testen, ob es funktioniert hat

Geben Sie einfach pipenv --version in die Eingabeaufforderung ein und Sie sollten die gewünschte Ausgabe sehen.

Anmerkungen

Ich weiß, dass das banal klingt, aber es ist eigentlich die Lösung für Windows-Systeme. Sie müssen keine Systemumgebungsvariablen ändern ( fügen Sie bitte keine Umgebungspakete zu Ihren Umgebungsvariablen ) hinzu.

Hoffe das hilft!

33
Srivats Shankar

Bei der Installation von Paketen mit pip werden die Terminal-Verknüpfungen manchmal nicht korrekt eingefügt, sie werden jedoch weiterhin als Python-Modul installiert. In diesem Fall können Sie python -m pipenv (oder welchen Befehl Sie zum Ausführen von Python vom Terminal aus verwenden) verwenden, um das Modul auszuführen, anstatt eine Verknüpfung zu verwenden.

Als Referenz, wenn ich pipenv auf meinem Mac installierte, sieht der Terminalbefehl beim Öffnen in einem Texteditor folgendermaßen aus:

#!/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())

so entfernt er .pyw oder .exe aus dem Namen der ausführbaren Datei und ruft dann pipenv.cli.cli() auf, wobei das Modul pipenv.__main__, das bei Verwendung von python -m pipenv ausgeführt wird, folgendermaßen aussieht:

from .cli import cli

if __== '__main__':
    cli()

Also tut es in der Tat das Gleiche.

Fügen Sie der Umgebungsvariable "Path" Folgendes hinzu:

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

anstelle von \site-package, da dort pipenv.exe installiert ist (zumindest für mich).

1

Anstatt 

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

es sollte sein

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

danach versuchen Sie es mit close und erneutem Öffnen des Terminals 

0
Charlie Heart

benutze diesen cmd um mein problem zu lösen:

python -m pipenv install Django==2.1
0