如何修复Windows系统错误地假设python.exe路径?
我在我的Windows电脑上尝试使用以下命令来安装pip:
pip install -r requirements.txt
但是当我执行这个命令时,出现了以下错误:
Fatal error in launcher: Unable to create process using '"C:\Program Files\Inkscape\bin\python.exe" "C:\Users\[my user]\.local\bin\pip.exe" install -r requirements.txt': The system cannot find the file specified.
很明显,它在错误的文件夹里寻找python.exe
文件。
这个文件夹之前在我的用户的PATH环境变量中,但我已经把它删除了。我还重新安装了Python,但没有把那个文件夹放进PATH变量里,结果还是出现了这个错误。有没有办法手动告诉系统,python.exe
实际上在\AppData\Local\Programs\Python\Python312\
这个路径下,而不是它认为的那个路径?我还按照网站上之前的这个问题的最佳答案中的说明进行了操作。
编辑:使用where python
命令得到的结果是:
C:\Users\[my user]\AppData\Local\Microsoft\WindowsApps\python.exe
编辑2:使用echo %PATH%
确实显示了包含python.exe
和pip.exe
的文件夹。
顺便说一下,错误信息提供的路径中确实有一个pip.exe
。
1 个回答
pip.exe
文件其实就是一个简单的启动程序,里面包含了一个指向真正启动程序的路径(在这个情况下指向了错误的 python.exe
),最后还有一个 ZIP 文件,里面装着一个 Python 脚本,这个脚本需要通过 Python 执行。
关于这个启动程序的详细信息,可以在这里找到:https://bitbucket.org/vinay.sajip/simple_launcher/src/master/
如果这个路径是绝对路径(通常都是这样,这里也是),那么即使你调整 PATH
环境变量,启动的还是同一个 pip.exe
,也不会有任何变化。
解决办法是找到和你安装的 Python 版本一起安装的 pip.exe
(它应该在 python.exe
所在目录下的 Scripts
文件夹里)。你可以把这个 pip.exe
复制过来,替换掉 C:\Users\[my user]\.local\bin\pip.exe
。
还有一种稍微复杂一点的办法,就是用十六进制编辑器修改 pip.exe
,把路径改成正确的。