电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
文章
[pyenv] Linux下的python版本管理工具
分 享
扫描二维码分享
[pyenv] Linux下的python版本管理工具
python
linux
pyenv
xbk_425933
关注
发布时间: 2022-01-05
丨
阅读: 381
![](https://cf01.ickimg.com/bbsimages/202112/b95983e48e7ba5ff0302b53fec02f80b.png) #写在开头 经常遇到这样的情况: 系统自带的python是2.x,自己需要python 3.x,此时需要在系统中安装多个python,但又不能影响系统自带的python,即需要实现python的多版本共存,pyenv就是这样一个python版本管理器。pyenv可以帮助你管理linux下的python版本及其依赖,并支持切换全局版本。 #项目地址 https://github.com/pyenv/pyenv # 安装 由于博主日常使用Centos7,这里就以Centos7做模板,其他版本系统可参考项目下面的说明。 首先安装git和gcc,pyenv安装时需要这两个软件做依赖 ```bash yum -y install git gcc ``` 然后安装编译python需要的依赖(参考:https://github.com/pyenv/pyenv/wiki/Common-build-problems) ```bash sudo yum install @development zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel findutils ``` 按照项目文档,我们使用作者写的安装脚本一键安装 项目地址:https://github.com/pyenv/pyenv-installer ```bash curl https://pyenv.run | bash ``` ![](https://cf01.ickimg.com/bbsimages/202112/a55a2bcdcb17a61122c50bb6f0505839.jpg) 安装完成后,我们按照提示在~/.bashrc里加入命令来支持命令提示 ```bash vim ~/.bashrc ``` 加入以下内容,然后输入:wq!保存 ```bash export PATH="/root/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)" export PYTHON_BUILD_MIRROR_URL_SKIP_CHECKSUM=1 export PYTHON_BUILD_MIRROR_URL="https://npm.taobao.org/mirrors/python/" ``` 安装完成,我们重启bash来获得命令提示 ```bash ex
ec bash ``` # 安装第一个python版本 pyenv安装完成后,我们就可以开始安装python,这里我们安装最新版python 使用pyenv install -l 列出可安装版本 ```bash [root@ecs-cbaf ~]# pyenv install -l Available versions: ... 3.7.1 3.7.2 3.8-dev ... ``` 开始安装 -v 显示安装过程,如果出现问题,我们可以通过安装过程看到错误。 ```bash pyenv install 3.7.2 -v ``` ![](https://cf01.ickimg.com/bbsimages/202112/f3218387147fd23ac1280f014e186f52.jpg) ![](https://cf01.ickimg.com/bbsimages/202112/4658a86dacd930329cc79f629fe9c326.jpg) 安装完成,我们把系统默认python版本切换到3.7.2 ```bash [root@ecs-cbaf ~]# pyenv global 3.7.2 [root@ecs-cbaf ~]# pyenv version version version-file version-file-read version-file-write version-name version-origin versions [root@ecs-cbaf ~]# pyenv versions system * 3.7.2 (set by /root/.pyenv/version) ``` 测试是否切换成功 ```bash [root@ecs-cbaf ~]# python -V Python 3.7.2 [root@ecs-cbaf ~]# pip -V pip 18.1 from /root/.pyenv/versions/3.7.2/lib/python3.7/site-packages/pip (python 3.7) ``` #更新 ```bash pyenv update ``` #卸载 删除安装目录 ```bash rm -fr ~/.pyenv ``` # 常用命令 ```bash pyenv install --list # 列出可安装版本 pyenv install
# 安装对应版本 pyenv install -v
# 安装对应版本,若发生错误,可以显示详细的错误信息 pyenv versions # 显示当前使用的python版本 pyenv which python # 显示当前python安装路径 pyenv global
# 设置默认Python版本 pyenv local
# 当前路径创建一个.python-version, 以后进入这个目录自动切换为该版本 pyenv shell
# 当前shell的session中启用某版本,优先级高于global 及 local ```
原创作品,未经权利人授权禁止转载。详情见
转载须知
。
举报文章
点赞
(
0
)
xbk_425933
关注
评论
(0)
登录后可评论,请
登录
或
注册
相关文章推荐
MK-米客方德推出工业级存储卡
Beetle ESP32 C3 蓝牙数据收发
Beetle ESP32 C3 wifi联网获取实时天气信息
开箱测评Beetle ESP32-C3 (RISC-V芯片)模块
正点原子数控电源DP100测评
DP100试用评测-----开箱+初体验
Beetle ESP32 C3环境搭建
【花雕体验】16 使用Beetle ESP32 C3控制8X32位WS2812硬屏之二
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回
我要举报该内容理由
×
广告及垃圾信息
抄袭或未经授权
其它举报理由
请输入您举报的理由(50字以内)
取消
提交