目录

一、背景

二、解决问题日志/搜索历程

三、“因迁移环境造成的该异常”之解决思路


一、背景

python版本3.8。

因为作者刚开始学python时不懂虚拟环境,所以将虚拟环境安装在了一个临时文件夹中。现在,我想要把这个已经下载了大量包库的虚拟环境打包到另一个正式文件夹,但是剪切粘贴后,发现即使激活了该虚拟环境,也无法正常使用pip指令。具体见下面的代码,环境是Windows的cmd黑窗口。

(venv) D:\Program Files\python\venv38\py-cv-learning\Scripts>pip list

以下是错误日志:
Fatal error in launcher: Unable to create process using '"D:\BaiduNetdiskDownload\pycharm\venv\Scripts\python.exe"  "D:\Program Files\python\venv38\py-cv-learning\Scripts\pip.exe" list': ???????????

从上面路径前的括号内容是venv(这是以前我放虚拟环境的文件夹名称),也可以看出,大概是因为我暴力迁移环境导致旧参数未及时更改过来导致这一问题。 而如果虚拟环境正常激活,括号里的内容应该是py-cv-learning。

二、解决问题日志/搜索历程

在网上搜索【Fatal error in launcher: Unable to create process using】,大多数教程的解决方法如下:

(1)如果路径包含中文,改一下;特别是Windows系统特别讲究这个问题。

(2)更新一下pip,使用命令【python -m pip install --upgrade】。如果已经是最新版本,就需要用强制安装命令【python -m pip install --upgrade --force-reinstall pip】。

(3)repair一下,具体方法我不清楚,我猜测是下面图片这种方法,但是貌似这种方法只能修复系统python环境吧??我不是很清楚,希望有智慧的读者能够指出。

(4)下面这篇文章 https://blog.csdn/m0_50796573/article/details/112697889 ,提示可能是因为迁移环境导致的错误,具体的原因是在pip.exe文件中其实包含当初创建虚拟环境留下的绝对路径,然后用记事本打开是没用的,因为这个文件是一个十六进制文件了,无法用人类熟知的自然语言正常查看和修改。而后,改文章作者推荐了软件【HEdit】来进行修改,需要用到里面的【望远镜】功能。

三、“因迁移环境造成的该异常”之解决思路

因为在本文第二部分的(4)中的文章给出的方法比较复杂,我又转换了一下思路。

百度搜索【直接复制虚拟环境文件 pip 错误】,得到的文章「https://blog.csdn/qq_29941979/article/details/121524270」,里面这个方法不错,我就尝试了一下,果然有效!但是我又跟他不一样,我的pip版本是最新的,但是没有安装低版本后再更新,而是直接用命令【python -m pip install --upgrade --force-reinstall pip】,一次性强制卸载再安装最新版本。

下面给出具体步骤:

        步骤(1):将虚拟环境中script文件夹下的activate文件和activate.dat文件中的旧虚拟环境绝对地址改成新地址。比如我的旧地址是下面画圈圈的部分,改成新地址【D:\Program Files\python\venv38\py-cv-learning】。注意,两个文件中的这个部分,非常相似!

         步骤(2):在新地址中激活虚拟环境,然后使用命令【python -m pip install --upgrade --force-reinstall pip】。

         步骤(3):最后,检验一下是否成功解决,运行指令【pip -V】,发现正常调用到pip的版本和所属绝对地址,成功解决!!!

更多推荐

pip命令-Fatal error in launcher: Unable to create process using ...迁移虚拟环境后出错如何解决?