python3.7与3.8多版本共存,并解决pip运行时Fatal error in launcher: Unable to create process using问题

本文详细介绍了如何在一台电脑上同时安装并使用Python3.7和Python3.8两个版本,通过修改环境变量和重命名Python执行文件实现版本区分。同时,解决了pip命令在多版本环境下出现的错误,提供了修改pip相关exe文件的16进制内容以适配新命名的Python执行文件的方法。
部署运行你感兴趣的模型镜像

摘要

网络上有很多关于python多版本共存的文章,但都是python2.7与python3.x共存。我最近一直都用的python3.7,有想体验一下python3.8的新特性,就研究了一下python3.7与python3.8共存的问题,其实挺简单,就是正常安装,然后移动一下系统环境变量,但问题出现了,经过查阅资料,找到了解决办法

安装python3.8.3

这步没什么好说的,去官网下载安装包安装就好了。

实现python3.7.7与python3.8.3共存

1、改名
与python3.7与python2.7共存不同,他俩通过python3与python来区分运行,但对于3.7与3.8,显然他俩都是python3。

于是乎,很简单,改个名。

去python3.8安装文件夹内,修改两个文件。如图。

在这里插入图片描述
将这两个名字改成你想要的名字,例如python38.exe,pythonw38.exe
此时在cmd里输入python38,就可以看到python3.8已经可以跑起来了。

2、修改一下环境变量path中两个版本的地址顺序,把你想首先运行的那个版本放在上面。

pip的问题

如法炮制,我们去Scripts文件夹下,把里面pip开头的文件改名,当然不改也是可以的,有现成的多种名字的pip。

然后,cmd里输入pip3.8试一下。。。gg了。
在这里插入图片描述
报错Fatal error in launcher: Unable to create process using '“g:\python38\python.exe” “G:\Python38\Scripts\pip3.8.exe” ’
简单来说,就是找不到python.exe这个文件,因为这个文件刚刚被重命名了。

解决

首先感谢这篇文章:

https://blog.youkuaiyun.com/testcs_dn/article/details/54176504

这种方法极其简单粗暴,因为python是开源的,所以里面的东西都是不加壳的,so,直接暴力修改16进制文件,也就是把pip的那些exe文件直接改了,简单粗暴至极。
工具:HEdit,这是一个修改文件16进制内容的软件,只有700多kb,大家直接百度去下载就好,系统防火墙会报毒,忽略就行,这种有点Hacker性质的软件一般都会报毒。

1、打开软件后,点击打开,导入pip3.8.exe文件
打开之后是这样的。
在这里插入图片描述

看不懂没关系,这玩意鬼才看得到。
只要知道,左边是16进制,右边是16进制翻译过来的东西,眼睛只需要停留在右边就行。

2、点击那个小放大镜,查找字符。
这里我们查找刚刚报错的那个地址,一般查找盘符就差不多能找到。
我这里输入G:,正好定位到了那个报错里的python.exe地址。
在这里插入图片描述
在这里插入图片描述
接下来就很明显了,把地址改成刚刚我们重命名之后那个python38.exe的地址。
这里要注意,如果字符数量没变,例如python2.exe改为python3.exe这种,直接按键盘字母改就行,但如果增加了字符,比如这里就是,python.exe改成python38.exe,增加了两个字符,我们要先将光标移至python.exe单词的点处,按Insert键,弹出一个插入窗口,字节数量填2,对应38这个数字的两个字节,点击确定,就可以看到,python这个词后面多了2个点。
在这里插入图片描述
在第一个点处依次写上38,这样地址就修改完了。点击左上角保存,然后退出。
在这里插入图片描述
然后我们在cmd中再次输入pip3.8,看看是不是就可以了,哈哈哈哈。
在这里插入图片描述
然后把Scripts文件夹中的所有跟pip有关的exe都这样改一下,别的命名方式就也能用了。

================
补充:其实Scripts文件夹内的pip有关文件都是一模一样的,只是名字不同而已。

您可能感兴趣的与本文相关的镜像

Python3.10

Python3.10

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

### 解决方案 当遇到 `pip` 报错 `Fatal error in launcher: Unable to create process using` 的问题,通常是因为 Python 安装不完整、环境变量配置错误或者某些文件损坏所致。以下是详细的分析和解决办法: #### 1. **确认 PythonPip 版本** 如果通过命令 `pip --version` 出现报错,而使用 `python -m pip --version` 能正常运行,则说明当前系统的 `pip` 可执行文件可能存在问题或未正确关联到 Python 执行程序[^2]。 建议先升级 `pip` 重新安装它: ```bash python -m pip install --upgrade pip ``` #### 2. **修复 Python Launcher 配置** 该错误的核心原因是无法创建进程来调用指定的 PythonPip 文件。这可能是由于以下原因造成的: - 环境变量中的路径指向了一个不存在的 Python 安装位置。 - Scripts 目录下的可执行文件被破坏或丢失。 可以通过以下方式解决问题: - 删除旧版本的 Python 安装,重新安装最新稳定版的 Python[^4]。 - 在新安装过程中勾选 "Add Python to PATH" 选项以确保环境变量设置无误。 #### 3. **手动重设环境变量** 检查系统环境变量是否包含多个不同版本的 Python 路径。如果有冲突的情况(比如同存在 Python 3.73.11),可能会导致加载错误[^4]。 清理多余的路径条目,仅保留目标 Python 版本的相关路径。例如对于 Windows 用户来说,在高级系统设置里找到“环境变量”,编辑 `Path` 中的内容如下所示: ``` C:\Users\<YourUsername>\AppData\Local\Programs\Python\Python39\ C:\Users\<YourUsername>\AppData\Local\Programs\Python\Python39\Scripts\ ``` #### 4. **强制更新或重建 Pip** 如果上述操作仍未能奏效,可以考虑完全卸载再重新构建 `pip` 工具链。具体做法包括但不限于删除 `%APPDATA%\Python\PythonXX\Scripts\*.*` 下的所有文件以及重新初始化它们[^5]: ```bash curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py python get-pip.py ``` 以上脚本会下载最新的官方 `get-pip.py` 来恢复完整的包管理功能。 --- ### 总结 综上所述,针对此问题可以从以下几个方面入手排查最终消除异常现象:一是核实是否存在多版本混搭情况;二是调整好全局搜索优先级即修正PATH定义;三是借助内置模块手段完成自我修复工作流程[^1]^[]^。
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值