搜索网络,这似乎是由Python安装路径中的空格引起的问题。

我如何让pip工作,而不必重新安装在一个没有空格的路径中的所有东西?


当前回答

如果您在Windows上使用区分大小写的文件系统,就会发生这种情况。如果你的venv目录中同时存在lib目录和lib目录,你就可以判断是否存在这种情况:

> dir

Directory: C:\git\case\sensitive\filesystem\here\venv

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        4/07/2018   4:10 PM                Include
d-----       22/01/2019   7:52 AM                Lib
d-----       22/01/2019   7:52 AM                lib
d-----       22/01/2019   7:52 AM                Scripts
d-----       22/01/2019   7:52 AM                tcl

为了解决这个问题(直到virtualenv.py得到修复:https://github.com/pypa/virtualenv/issues/935)合并两个lib目录并使venv不区分大小写:

cd venv
move Lib rmthis
move .\rmthis\site-packages\ lib
rmdir rmthis
fsutil.exe file setCaseSensitiveInfo . disable

其他回答

它不是直接调用ipython,而是使用Python加载,例如

“ipython.exe的完整路径”

我有一个更简单的解决方案。使用@apple方式,但将main.py重命名为pip.py,然后将其放在python版本scripts文件夹中,并将scripts文件夹添加到您的路径中,全局访问它。如果你不想把它添加到路径,你必须CD到脚本,然后运行PIP命令。

这是我如何解决它。

下载https://bootstrap.pypa.io/get-pip.py 激活你的vitualenv 导航到get-pip.py文件,输入“python get-pip.py”,不带引号。

它将在环境中重新安装PIP,并自动卸载以前的版本。

现在繁荣! !安装你喜欢的任何东西

尝试使用下面的链接重新安装,

下载https://bootstrap.pypa.io/get-pip.py

下载后,将“get-pip.py”复制到python安装的主目录,然后打开cmd并导航到python目录并键入“python get-pip.py”(不带引号)

注意:还要确保在环境变量中设置了python目录。

希望这能有所帮助。

我将python.exe的可执行文件重命名为例如python27.exe。关于Archimedix的答案,我用十六进制编辑器打开我的pip.exe,滚动到文件的末尾,并将路径中的python.exe更改为python27.exe。在编辑make shure时,不重写其他信息。