• ubuntu下安装多版本Python


      今天一不小心又把ubuntu系统给完坏了,因为我把python3卸载了,然后就。。。好了,不废话了,接下来就说一下如何在ubuntu下管理python的多个版本。我这里使用的是一个叫pyenv的Python版本管理工具。

      系统环境:ubuntu14.04LTS,系统默认的python版本为2.7,我这里想要再安装一个3.4.3版本。

    • 再安装python之前,我们首先要安装这个管理工具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

      我们还可以通过下面这个命令来查看可以安装的python版本:

    $ pyenv install --list
    • 如果我们确定要安装python3.4.3的话,接下来我们就可以安装python了,但是再安装之前,我们必须要安装python所需要的依赖包,这个必须要安装,安装会失败的:
    $ sudo apt-get install libc6-dev gcc
    $ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm
    • 上面的依赖包搞定之后,我们就可以安装python了:
    $ pyenv install 3.4.3 -v

      该命令会从github上下载python的源代码,并解压到/tmp目录下,然后在/tmp中执行编译工作。若依赖包没有安装,则会出现编译错误,需要在安装依赖包滞后重新执行该命令。

    • 安装完成之后,需要使用如下命令对数据库进行更新:
    $ pyenv rehash
    • 查看当前已经安装的python版本
    $ pyenv versions
    * system (set by /home/seisman/.pyenv/version)
    3.4.3

      其中星号代表是当前系统正在使用的python版本是系统自带的。

    • 设置全局的python版本
    $ pyenv global 3.4.3
    $ pyenv versions
    system
    * 3.4.3 (set by /home/seisman/.pyenv/version)

      从上面,我们可以看出来当前的python版本已经变为了3.4.3。也可以使用pyenv local或pyenv shell临时改变python的版本。

    • 确认python版本
    $ python
    Python 3.4.3 (default, Apr  1 2015, 19:10:43) 
    [GCC 4.8.2] on linux
    Type "help", "copyright", "credits" or "license" for more information.

      注意事项:

    • 输入python即可使用新版的python;
    • 系统自带的脚本会以/usr/bin/python的方式直接调用老版本的python,因而不会对系统脚本产生影响;
    • 使用pip安装第三方模块时会安装到~/.pyenv/versions/3.4.3下,不会和系统模块发生冲突;
    • 使用pip安装模块后,可能需要执行pyenv rehash更新数据库。

      参考资料:

      [1] http://seisman.info/python-pyenv.html

      [2] http://crazyof.me/blog/archives/13.html

  • 相关阅读:
    最全的C#图片处理类ImageHelper.cs
    基于Asp.net C#实现HTML转图片(网页快照)
    WebSiteThumbnail 直接根据html生成图片
    C#里面如何判断一个Object是否是某种类型
    对datatable里面的表进行排序
    spark中RDD的transformation&action
    腾讯大数据之TDW计算引擎解析——Shuffle
    什么是RDD?
    java.io.IOException: No space left on device 错误
    win7 audio repeater 虚拟声卡 屏幕录像专家
  • 原文地址:https://www.cnblogs.com/ningvsban/p/4384995.html
Copyright © 2020-2023  润新知