启动程序中的致命错误:无法使用""C:\ Program Files(x86)\ Python33\python.exe""C:\ Program Files(x86)\ Python33\pip.exe""创建进程

Arc*_*dix 201 python pip

在网上搜索这似乎是由Python安装路径中的空格引起的问题.

如何pip在没有空格的路径中重新安装所有内容的情况下开始工作?

小智 439

看起来

python -m pip install XXX 
Run Code Online (Sandbox Code Playgroud)

无论如何都会工作(为我工作)(参见用户474491的链接)

  • 使它成为公认的答案,虽然它更像是一种解决方法(或替代方法),而不是实际修复,但无论如何,它更普遍适用. (7认同)
  • 这是一种解决方法,不应该是公认的答案 (4认同)
  • @ user4154243,有效,但你能解释一下它的实际作用吗?是否有使用它安装其他所有库的后果? (2认同)

Arc*_*dix 73

至少在Windows上,安装时pip将执行路径存储在可执行文件中pip.exe.

使用十六进制编辑器或写字板编辑此文件(您必须将其保存为纯文本,然后保留二进制数据),使用引号和空格更改Python的路径,如下所示:

#!"C:\Program Files (x86)\Python33\python.exe"
Run Code Online (Sandbox Code Playgroud)

到没有空格和引号的转义路径和带空格的垫(末尾的点应该是空格):

#!C:\Progra~2\Python33\python.exe.............
Run Code Online (Sandbox Code Playgroud)

对于"C:\ Program Files",此路径可能是"C:\ Progra~1"(DOS/Windows 3.x表示法中缩短的路径名使用波形符号和数字).Windows为DOS/Windows 3.x应用程序的向后兼容性提供了这种替代符号.

请注意,由于这是一个二进制文件,因此不应更改可能破坏可执行文件的文件大小,因此不应更改填充.

使用管理员权限保存,确保它实际保存在目标位置,然后重试.

您可能还需要将PATH变量设置为使用~路径表示法pip.

  • 这对我有用.我的原始字符串是`#!"C:\ Program Files\Python3.4\python.exe"`,所以我将其更改为`#!C:\ Progra~1\Python3.4\python.exe`并且它有效.我能用Notepad ++编辑文件.该字符串显示在文件末尾附近,在长行的末尾. (6认同)
  • 这很有效.我只是卸载了python.然后重新安装; 重新安装后,我只是将安装文件夹从`C:\ Program Files(x86)\ Python34`更改为`C:\ Progra~2\Python34`.(如果您不想处理十六进制编辑器或更改二进制文件) (3认同)
  • 写字板是一个愚蠢的文本编辑器,Sublime可能太聪明了,显示内容的十六进制转储,我想. (2认同)
  • “至少在Windows上,pip在安装后将执行路径存储在可执行文件pip.exe中。” 现在这很愚蠢-.-花了我半个小时才弄清楚。 (2认同)

小智 36

遇到同样的问题我在https://pip.pypa.io/en/latest/installing.html#install-pip中阅读,以便更新pip:

python -m pip install -U pip

所以我做了(例如)

python -m pip install virtualenv

它奏效了!所以你可以做同样的'virtualenv'你想要的另一个包.

  • 我遇到了错误列表,这是对我有用的解决方案!我甚至可以使用'pip install virtualenv'并在升级到最新点后停止使用'python -m pip'.谢谢! (4认同)

小智 17

python -m pip

真的适用于这个问题Fatal error in launcher: Unable to create process using '"'.在Windows 10上工作


Joh*_*Gov 14

我有一个类似的问题和升级点修复它为我.

python -m pip install --upgrade pip 
Run Code Online (Sandbox Code Playgroud)

这是在Windows上,pip.exe中的python路径不正确.有关路径的更多信息,请参阅Archimedix答案.

  • 谢谢!您可能需要添加:--force (3认同)

app*_*e16 5

这是我解决它的方式:

  1. pip.exe在7zip中打开并解压缩__main__.py到Python\Scripts文件夹.

    就我而言 C:\Program Files (x86)\Python27\Scripts

  2. 重命名__main__.pypip.py

  3. 运行! python pip.py install something

编辑:

如果您希望能够在pip install something任何地方进行操作,请执行以下操作:

  1. 将pip.py重命名为pip2.py(以避免导入pip错误)

  2. 制作C:\Program Files (x86)\Python27\pip.bat以下内容:

python"C:\ Program Files(x86)\ Python27\Scripts\pip2.py"%1%2%3%4%5%6%7%8%9

  1. 添加C:\Program Files (x86)\Python27到您的PATH(如果尚未添加)

  2. 运行! pip install something


use*_*491 5

当路径中有空格时,这是一个已知的错误virtualenv。已更正,并将在下一版本中提供。

  • 不,到目前为止,Python34,仍然有这个bug! (16认同)
  • Pip 错误现已修复。通过运行“python -m pip install -U pip”进行更新 (6认同)
  • 仍然是一个问题:Python37 (2认同)