Die Wurzel des Problems ist , dass Räume in Bauden als Zufuhr zusätzliche Argumente zu einem ausführbaren interpretiert werden, so C:\Program Files\Python\python.exe
werden , wie gesehen C:\Program
gegeben Files\Python\python.exe
als Argument.
Die beste Lösung dafür, da Windows Leerzeichen im $HOME
Verzeichnis und an Program Files
anderen Stellen LIEBT, obwohl es in cmd.exe und Powershell und anderen Tools wirklich Probleme verursachen kann, ist:
Installieren Sie Python C:\Python
und fügen Sie den C:\Python
Ordner, in dem sich python.exe
das Scripts
Verzeichnis befindet, und das darin befindliche Verzeichnis Ihrer PATH
Umgebungsvariablen auf System- oder Benutzerebene hinzu.
Wenn Sie Python 2.7.x und 3.x zu koexistieren müssen, installieren Sie sie in C:\Python27
und C:\Python36
und C:\Python37
und benennen Sie die python.exe
zu python2.exe
, python36.exe
, python37.exe
, etc. und jeder dieser Ordner und deren fügen Scripts
Ordner in die PATH
. Möglicherweise möchten Sie festlegen, welche der Python 3-Versionen Sie als "Standard" verwenden möchten, und in diesem Ordner eine Kopie erstellen python3.exe
, um alle verwendeten Skripts zu verarbeiten !#/usr/bin/env python3
.
Wenn in Ihrem Benutzer-Ausgangsverzeichnis ein Leerzeichen vorhanden ist, können auch Probleme auftreten, wenn Sie die pip install --user somepackage
Syntax verwenden. Die --user
Standardeinstellungen sind Ihr Ausgangsverzeichnis, und der Speicherplatz wird auch in diesem Fall die Dinge auslösen. Die Problemumgehung wird hier beschrieben , läuft jedoch darauf hinaus, PYTHONUSERBASE in Ihre Umgebung zu exportieren.
export PYTHONUSERBASE=/myappenv
pip install --user SomePackage
oder in Windows (Powershell):
$env:PYTHONUSERBASE='C:\PythonPkgs'
pip install --user SomePackage
env
, wie es der Fragesteller tut.