详解使用 pyenv 管理多个版本 python 环境


Posted in Python onOctober 19, 2017

 随着同时开发的项目越来越多,需要不停的在各个不同版本的 python 环境之间切换,所以想到了pyenv。以前一直使用的 virtualenv只能管理同一个 python 版本下第三方库的版本,但是对于这种需要在多个不同版本之间切换的 case,就只能使用 pyenv 了。

安装

运行下面的命令会自动下载安装

$ curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash

安装完成后,需要修改 ~/.bashrc 文件,把pyenv加到 PATH 里。这里是添加如下行到 ~/.bashrc 文件中。

export PATH="/home/kongxx/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

然后 source 一下环境

$ .~/.bashrc

使用 pyenv 管理 python 版本

首先查看当前系统上已经安装和正在使用的 python 版本。

$ pyenv versions
* system (set by /home/kongxx/.pyenv/version)

其中 system 表明是系统安装的包。* 表示当前正在使用的 python 环境。

查看当前可以被安装的 python 版本。

$ pyenv install -l
Available versions:
 2.1.3
 2.2.3
 2.3.7
 2.4
 2.4.1
...

安装指定版本的 python

$ pyenv install 2.7.10
Downloading Python-2.7.10.tar.xz...
-> https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tar.xz
Installing Python-2.7.10...
patching file ./Lib/site.py
Installed Python-2.7.10 to /home/kongxx/.pyenv/versions/2.7.10

$ pyenv install 3.2.1
...

安装后查看现在已经安装了的 python 版本。

$ pyenv versions
* system (set by /home/kongxx/.pyenv/version)
 2.7.10
 3.2.1

使用制定版本的 python

$ pyenv global 3.2.1
$ python -V
Python 3.2.1

使用后查看当前使用的 python 版本。

$ pyenv version
3.2.1 (set by /home/kongxx/.pyenv/version)

$ pyenv versions
 system
 2.7.10
* 3.2.1 (set by /home/kongxx/.pyenv/version)

使用 pyenv 管理 virtualenv

创建一个 virtualenv 环境

这里使用 python 3.2.1 来创建一个 virtualenv 环境

$ pyenv virtualenv 3.2.1 myenv

$ pyenv versions
 system
 2.7.10
* 3.2.1 (set by /home/kongxx/.pyenv/version)
 3.2.1/envs/myenv
 myenv

激活当前需要使用的 virtualenv

$ pyenv activate myenv

$ pyenv versions
 system
 2.7.10
 3.2.1
 3.2.1/envs/myenv
* myenv (set by PYENV_VERSION environment variable)

去除当前需要使用的 virtualenv

$ pyenv deactivate

删除当前需要使用的 virtualenv

$ pyenv virtualenv-delete myenv

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 爬取微信文章
Jan 30 Python
Python编程实现双链表,栈,队列及二叉树的方法示例
Nov 01 Python
Python 数值区间处理_对interval 库的快速入门详解
Nov 16 Python
Python3标准库总结
Feb 19 Python
如何用C代码给Python写扩展库(Cython)
May 17 Python
python使用turtle绘制国际象棋棋盘
May 23 Python
python的pyecharts绘制各种图表详细(附代码)
Nov 11 Python
利用4行Python代码监测每一行程序的运行时间和空间消耗
Apr 22 Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
Jun 15 Python
pytorch 限制GPU使用效率详解(计算效率)
Jun 27 Python
Pycharm Git 设置方法
Sep 15 Python
Django url 路由匹配过程详解
Jan 22 Python
python3使用pyqt5制作一个超简单浏览器的实例
Oct 19 #Python
PyQt5利用QPainter绘制各种图形的实例
Oct 19 #Python
python连接数据库的方法
Oct 19 #Python
Python3使用PyQt5制作简单的画板/手写板实例
Oct 19 #Python
python里使用正则的findall函数的实例详解
Oct 19 #Python
详解python里使用正则表达式的全匹配功能
Oct 19 #Python
python中logging库的使用总结
Oct 18 #Python
You might like
Windows2003 下 MySQL 数据库每天自动备份
2006/12/21 PHP
PHP n个不重复的随机数生成代码
2009/06/23 PHP
php长字符串定义方法
2012/07/12 PHP
比较discuz和ecshop的截取字符串函数php版
2012/09/03 PHP
探讨如何在PHP开启gzip页面压缩实例
2013/06/09 PHP
php函数间的参数传递(值传递/引用传递)
2013/09/23 PHP
Laravel 批量更新多条数据的示例
2017/11/27 PHP
php设计模式之工厂方法模式分析【星际争霸游戏案例】
2020/01/23 PHP
一个多次搜索+多次传值的解决方案
2007/01/20 Javascript
Mootools 1.2教程 同时进行多个形变动画
2009/09/15 Javascript
JavaScript仿微博发布信息案例
2016/11/16 Javascript
Node+Express+MongoDB实现登录注册功能实例
2017/04/23 Javascript
React如何利用相对于根目录进行引用组件详解
2017/10/09 Javascript
bmob js-sdk 在vue中的使用教程
2018/01/21 Javascript
基于Vue实现拖拽效果
2018/04/27 Javascript
快速解决bootstrap下拉菜单无法隐藏的问题
2018/08/10 Javascript
jQuery事件多次绑定与解绑问题实例分析
2019/02/19 jQuery
webpack4实现不同的导出类型
2019/04/09 Javascript
vue 获取元素额外生成的data-v-xxx操作
2020/09/09 Javascript
js实现头像上传并且可预览提交
2020/12/25 Javascript
Python中操作MySQL入门实例
2015/02/08 Python
Python+django实现文件上传
2016/01/17 Python
win8下python3.4安装和环境配置图文教程
2018/07/31 Python
Python 实现「食行生鲜」签到领积分功能
2018/09/26 Python
python使用matplotlib画柱状图、散点图
2019/03/18 Python
python 表格打印代码实例解析
2019/10/12 Python
在python中利用try..except来代替if..else的用法
2019/12/19 Python
Python编程快速上手——选择性拷贝操作案例分析
2020/02/28 Python
详细分析Python collections工具库
2020/07/16 Python
calendar在python3时间中常用函数举例详解
2020/11/18 Python
使用CSS3和Checkbox实现JQuery的一些效果
2015/08/03 HTML / CSS
HTML5重塑Web世界它将如何改变互联网
2012/12/17 HTML / CSS
出纳工作检讨书
2014/10/18 职场文书
离婚协议书范文
2015/01/26 职场文书
基于Redis实现分布式锁的方法(lua脚本版)
2021/05/12 Redis
教你使用TensorFlow2识别验证码
2021/06/11 Python