python两个基本的库管理工具_Python多版本共存管理工具之pyenv
Table of Contents
经常遇到这样的情况:
系统自带的Python是2.6,自己需要Python 2.7中的某些特性;
系统自带的Python是2.x,自己需要Python 3.x;
此时需要在系统中安装多个Python,但又不能影响系统自带的Python,即需要实现Python的多版本共存。pyenv就是这样一个Python版本管理器。
1. 安装pyenv
$ git clone git://github.com/yyuu/pyenv.git ~/.pyenv
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ exec $SHELL -l
2. 安装Python
查看可安装的版本
$ pyenv install --list
该命令会列出可以用pyenv安装的Python版本,仅列举几个:
2.7.8 # Python 2最新版本
3.4.1 # Python 3最新版本
anaconda-2.0.1 # 支持Python 2.6和2.7
anaconda3-2.0.1 # 支持Python 3.3和3.4
其中形如x.x.x这样的只有版本号的为Python官方版本,其他的形如xxxxx-x.x.x这种既有名称又有版本后的属于“衍生版”或发行版。
2.1 安装Python的依赖包
在安装Python时需要首先安装其依赖的其他软件包,已知的一些需要预先安装的库如下。
在CentOS/RHEL/Fedora下:
sudo yum install readline readline-devel readline-static
sudo yum install openssl openssl-devel openssl-static
sudo yum install sqlite-devel
sudo yum install bzip2-devel bzip2-libs
2.2 安装指定版本
使用如下命令即可安装python 3.4.1:
$ pyenv install 3.4.1 -v
该命令会从github上下载python的源代码,并解压到/tmp目录下,然后在/tmp中执行编译工作。若依赖包没有安装,则会出现编译错误,需要在安装依赖包后重新执行该命令。
对于科研环境,更推荐安装专为科学计算准备的Anaconda发行版,pyenv install anaconda-2.1.0安装2.x版本,pyenv install anaconda3-2.1.0安装3.x版本;
Anacoda很大,用pyenv下载会比较慢,可以自己到Anaconda官方网站下载,并将下载得到的文件放在~/.pyenv/cache目录下,则pyenv不会重复下载。
2.3 更新数据库
安装完成之后需要对数据库进行更新:
$ pyenv rehash
查看当前已安装的python版本
$ pyenv versions
* system (set by /home/seisman/.pyenv/version)
3.4.1
其中的星号表示当前正在使用的是系统自带的python。
2.4 设置全局的python版本
$ pyenv global 3.4.1
$ pyenv versions
system
* 3.4.1 (set by /home/seisman/.pyenv/version)
当前全局的python版本已经变成了3.4.1。也可以使用pyenv local或pyenv shell临时改变python版本。
2.5 确认python版本
$ python
Python 3.4.1 (default, Sep 10 2014, 17:10:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
3.0 使用python
输入python即可使用新版本的python;
系统自带的脚本会以/usr/bin/python的方式直接调用老版本的python,因而不会对系统脚本产生影响;
使用pip安装第三方模块时会安装到~/.pyenv/versions/3.4.1下,不会和系统模块发生冲突。
使用pip安装模块后,可能需要执行pyenv rehash更新数据库;
参考
python两个基本的库管理工具_Python多版本共存管理工具之pyenv相关推荐
- python虚拟环境管理工具_Python虚拟环境和包管理工具Pipenv的使用详解--看完这一篇就够了...
前言 Python虚拟环境是一个虚拟化,从电脑独立开辟出来的环境.在这个虚拟环境中,我们可以pip安装各个项目不同的依赖包,从全局中隔离出来,利于管理. 传统的Python虚拟环境有virtualen ...
- 账号管理工具_新媒体账号管理工具,自媒体运营神器,管理多个账号很简单
新媒体账号管理工具,自媒体运营神器,管理多个账号很简单,账号管理一直是自媒体人的一个痛点,尤其是现在大家手上都有很多个账号的情况下,无论是进行内容的分发还是账号管理,如果纯靠手动进行发布,那么将会浪费 ...
- Redis Desktop Manager – Redis可视化管理工具、redis图形化管理工具、redis可视化客户端、redis集群管理
Redis Desktop Manager – 个人认为是目前最好用的Redis可视化管理工具. redis可视化工具.Redis可视化管理工具.redis图形化管理工具.redis可视化客户端.re ...
- Redis Desktop Manager – Redis可视化管理工具、redis图形化管理工具、redis可视化客户端、redis集群管理工具
Redis Desktop Manager – 个人认为是目前最好用的Redis可视化管理工具. redis可视化工具.Redis可视化管理工具.redis图形化管理工具.redis可视化客户端.re ...
- python中有很多包管理工具那中不是_Python中的包管理工具PIP,pip
1.1.4节 -- Python的包管理工具pip pip包 pip list(退出python环境后再输入) 列出匹配管理的包有哪些 pip install 包名 安装一个包(默认安 ...
- 有多个python版本_python 多版本共存
有时候需要在同一台机器上安装多个版本的python 常见的解决方式如下: 一. 1. 下载python2.7和python3.7,然后在C盘下新建一个Python文件夹, python2.7安装到 ...
- python计算对数收益率_为VNPY的K线序列管理工具ArrayManager增加对数收益率队列
在做策略建模的时候,经常需要把K线转换为可以正态分布数据,这样可以使用那些很牛吼吼的数学模型进行挖掘. 实现很简单 c = ln(t1/t0) 如果我们考察单一投资品在总共 T 期内的表现,那应该用对 ...
- android管理工具,AnyDroid(电脑安卓手机管理工具)V7.3.0.20200910 正式版
AnyDroid(电脑安卓手机管理工具)是一款很优秀好用的安卓手机管理的辅助工具.如果你需要一款好用的安卓手机管理工具,不妨试试小编带来的这款AnyDroid软件,功能强大全面,使用后可以帮助用户更轻 ...
- 计算机管理工具怎么设置,日程安排管理工具敬业签电脑版如何更改默认标签分类?...
原标题:日程安排管理工具敬业签电脑版如何更改默认标签分类? 作为一款跨Windows电脑.iPhone手机.Android手机等多端云同步的日程安排管理工具,云便签敬业签电脑版初次使用时,会发现系统给 ...
最新文章
- windows系统中查看linux分区的三种方式
- Matlab学习笔记——矩阵求幂和矩阵指数
- 解决svn working copy locked问题
- Java程序员从笨鸟到菜鸟之(八十)细谈Spring(九)spring+hibernate声明式事务管理详解
- 对 Entity 的初步构思
- 【数据竞赛】基于LSTM模型实现共享自行车需求预测
- 优麒麟在linux下安装教程,在优麒麟Ubuntu Kylin系统中安装百度网盘Linux版.deb的方法...
- 部门直推!百度大搜索招聘NLP、搜索方向算法工程师!
- 文博项目-终端网口测试-软件
- Linux学习笔记4.4-Linux重定向
- 计算机系统-程序加载器
- 小麦积分墙:我的App与微信搞上了
- 阶段性总结、反思、计划
- 分组卷积计算量_轻量级卷积神经网络的设计技巧
- shopnum1商城系统
- css 动画类库Animate.css
- TangerineWallpaper for Mac(高清橘子壁纸) 中文版
- UT000054: The maximum size 1048576 for an individual file in a multipart req
- CentOS7安装配置MongoDB4.4.4踩坑
- iperf3带宽测试工具
热门文章
- IntelliJ IDEA + Maven环境编写第一个hadoop程序
- Mybatis Interceptor 拦截器
- HIGHGUI ERROR: V4L/V4L2: VIDIOC_S_CROP错误解决方法
- JEPF 3.1.3 发布,我们的软件机床
- Javascript实现简单的选项卡
- CentOS6.5升级内核到3.10.28
- 如何用java实现使用电子邮件控制你的电脑
- java.io.file()_Java IO File (一)
- 1流式细胞术荧光比值计算_流式细胞术技巧攻略!
- 被尘封的故事鸿蒙轩,被尘封的故事全任务通关人物存档