专栏名称: Python开发者
人生苦短,我用 Python。伯乐在线旗下账号「Python开发者」分享 Python 相关的技术文章、工具资源、精选课程、热点资讯等。
目录
相关文章推荐
Python爱好者社区  ·  刚刚!微信 DeepSeek ... ·  昨天  
Python爱好者社区  ·  模仿一下领导说话的样子 ·  16 小时前  
Python爱好者社区  ·  35个爬虫实例 ·  3 天前  
Python爱好者社区  ·  机器学习全书 ·  3 天前  
Python爱好者社区  ·  梁文锋导师项志宇引关注,个人主页满满都是对团 ... ·  3 天前  
51好读  ›  专栏  ›  Python开发者

Python 多版本切换工具- Pyenv/Virtualenv 及 Anaconda 科学计算环境的配置

Python开发者  · 公众号  · Python  · 2017-03-22 21:26

正文

(点击 上方蓝字 ,快速关注我们)


来源:Michael_翔_

segmentfault.com/a/1190000004020387

如有好文章投稿,请点击 → 这里了解详情


为了安装Anaconda科学计算环境,控制好python版本,今天上午总算折腾好了。


学习python有时希望在python2.7环境下,有时希望在python3.4环境下,该怎么办呢?


Anconda的包也不知道适合在什么环境下工作?


解决多python环境下,python版本切换的工具–pyenv应运而生。同时,另外一个工具virtualenv则提供了一种功能, 就是将一个目录建立为一个虚拟的python环境, 这样的话, 用户可以建立多个虚拟环境, 每个环境里面的python版本可以是不同的, 也可以是相同的, 而且环境之间相互独立。


下面简要介绍一下安装的过程:


Unix系统下pyenv安装与使用:


安装pyenv


$ git clone https : //github.com/yyuu/pyenv.git ~/.pyenv     #使用 git 把 pyenv 下载到家目录

$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/ . bashrc #然后需要修改环境变量,使用 Bash Shell 的输入

$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/ . bashrc

$ echo 'eval "$(pyenv init -)"' >> ~/ . bashrc #最后添加 pyenv init

$ exec $ SHELL - l #输入命令重启 Shell,然后就可以重启pyenv


查看pyenv可安装的版本列表


$ pyenv install --list


該命令将列出pyenv可以安装的列表,单单列举几个咱们关心的python和anaconda把:


2.7.8 # Python 2最新版本

3.4.1 # Python 3最新版本

anaconda - 2.4.0 # 支持Python 2.6和2.7

anaconda3 - 2.0.1 # 支持Python 3.3和3.4


安装指定的python版本。


$ pyenv install 3.4.1


该命令会从github上下载python的源代码安装,但是,我这里主要是用来进行科学计算的环境安装,因此,最后选择安装

anaconda-2.4.0(python2.7环境) 和 anaconda3-2.4.0(python3.4环境)。可以选择都安装,之后可以使用pyenv进行版本的切换。

注:


  • 这里利用pyenv命令安装的python版本都安装在~.pyenv/versions文件夹下,当然,如果你从图形界面进入Ubuntu的用户主目录下可能看不见.pyenv文件夹,这时候,你可以使用ls -a看到隐藏的文件夹。

  • 使用pip安装的包完成之后,可能需要对数据库进行更新:


pyenv rehash


卸载指定的python版本


pyenv uninstall x.x.x


python版本查看


查看当前已经安装了的python版本:


pyenv versions


输出结果如下:


* system ( set by / home / michael / . pyenv / version )

2.7.1

3.4.1

anaconda - 2.4.0


system是指系统的python版本;*表示当前环境所处于的python版本


python版本切换


全局版本切换:


pyenv global anaconda-2.4.0


全局切换为anaconda科学计算环境,因为,我现在也不做其他python开发,所以,无需再安装其他环境了。


查看现在的python版本:


michael @ michael - ThinkCentre - XXXX :~ $ pyenv versions

system

2.7.1

3.4.1

* anaconda - 2.4.0 ( set by / home / michael / . pyenv / version )


有全局版本切换,当然也会有局部环境的切换:


在test文件夹下希望切换到python3.4.1:


pyenv local python3.4.1


python virtualenv创建纯净虚拟环境


虽然直接安装pip安装virtualenv也行,但是通过pyenv插件的形式安装virtualenv的虚拟环境更加方便,因为之后的操作会比较方便。


安装插件pyenv-virtualenv


参考文章:http://www.tiny-coder.com/home-article-51.html


pyenv-virtualenv插件安装:项目主页:https://github.com/yyuu/pyenv-virtualenv


pyenv virtualenv是pyenv的插件,为UNIX系统上的Python virtualenvs提供pyenv virtualenv命令。


git clone https : //github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv

echo 'eval "$(pyenv virtualenv-init -)"' >> ~/ . bash_profile

source ~/ . bash_profile


这个插件将安装在主文件夹下的.pyenv文件夹中。


创建一个2.7.1的虚拟环境


pyenv virtualenv 2.7.1 env271


再需要创建虚拟环境的文件夹下创建虚拟环境。


这条命令在本机上创建了一个名为env271的python虚拟环境,这个环境的真实目录位于:~/.pyenv/versions/


注意,命令中的 ‘2.7.1’ 必须是一个安装前面步骤已经安装好的python版本, 否则会出错。


然后我们可以继续通过 ‘pyenv versions’ 命令来查看当前的虚拟环境。


切换和使用新的python虚拟环境:


pyenv activate env271


这样就能切换为这个版本的虚拟环境。通过输入python查看现在版本,可以发现处于虚拟环境下了。


下面基本上你就可以在这个虚拟环境里面为所欲为了 :) 再也不用担心系统路径被搞乱的问题了


如果要切换回系统环境, 运行这个命令即可


pyenv deactivate


那如果要删除这个虚拟环境呢? 答案简单而且粗暴,只要直接删除它所在的目录就好:


rm -rf ~/.pyenv/versions/env271/


或者卸载:


pyenv uninstall env271


Anaconda科学计算包的使用:


使用conda list查看anaconda安装自带的包:


michael @ michael - ThinkCentre - XXXX :~/ test $ conda list

# packages in environment at /home/michael/.pyenv/versions/anaconda-2.4.0:

#

abstract - rendering 0.5.1 np110py27_0

alabaster







请到「今天看啥」查看全文


推荐文章
Python爱好者社区  ·  模仿一下领导说话的样子
16 小时前
Python爱好者社区  ·  35个爬虫实例
3 天前
Python爱好者社区  ·  机器学习全书
3 天前
YOHO潮流志  ·  街头品牌LOOKBOOK的正确制作方式...
7 年前
中央戏剧学院就业创业指导中心  ·  招贤榜┇中央戏剧学院招聘启事(十一)
7 年前