美文网首页
Centos7安装Python3.5

Centos7安装Python3.5

作者: liurongming | 来源:发表于2017-04-08 18:52 被阅读0次

    升级Python到3.0以上

    *由于python3.0与之前的版本已经不再兼容,如果需要使用最新的Python则需要升级原来python版本,但是因为centos采用的yum管理安装,需要之前的版本支持,因此需要考虑升级的版本时候,保留之前的版本并存给yum使用 *

    查看当前版本

    python -V
    centos7 默认安装的python环境为
    Python 2.7.5

    安装python3.5

    安装步骤如下 :
    1 准备编译环境(环境如果不对的话,可能遇到各种问题,比如wget无法下载https链接的文件)

    yum groupinstall 'Development Tools'
    yum install zlib-devel bzip2-devel  openssl-devel ncurses-devel
    

    2 下载 Python3.5代码包
    wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tar.xz

    3 编译安装

    tar Jxvf  Python-3.5.0.tar.xz
    cd Python-3.5.0
    ./configure --prefix=/usr/local/python3
    make && make install
    

    4 替换python2.7.5 的软连接

    rm  /usr/bin/python 
    ln -sv  /usr/local/python3/bin/python3.5  /usr/bin/python
    

    这样做的目的是在系统任意目录敲入python调用的是python3的命令,而非系统默认2.7.5的
    但是这样同时这会导致依赖python2.7.5的yum不能使用,因此还要修改yum配置。

    5 更新yum配置
    ll /usr/bin | grep python
    这时/usr/bin目录下面是包含以下几个文件的(ll |grep python),其中有个python2.7,只需要指定yum配置的python指向这里即可
    vim /usr/bin/yum
    通过vim修改yum的配置
    #!/usr/bin/python改为#!/usr/bin/python2.7,保存退出。
    完成了python3.5的安装。

    用virtualenv管理python3运行环境

    简介

    virtualenv可以用来管理互不干扰的独立python虚拟环境,在有些场景下非常有用,例如:
    你有两个python项目,一个是python2.7的,另一个是python3.5的,可以创建两个虚拟环境。
    你有两个python项目,都依赖与一个module的不同版本,可以创建两个不同的虚拟环境,里面安装这个module的不同版本。
    virtualenvwrapper在virtualenv的基础上提供了一些更方便的命令。

    安装

    (sudo) pip install virtualenv virtualenvwrapper
    

    Linux/Mac OSX 下:

    修改~/.bash_profile或其它环境变量相关文件(如 .bashrc 或用 ZSH 之后的 .zshrc),添加以下语句

    export WORKON_HOME=$HOME/.virtualenvs
    export PROJECT_HOME=$HOME/workspace
    source /usr/local/python3/bin/virtualenvwrapper.sh
    

    修改后使之立即生效(也可以重启终端使之生效):
    source ~/.bash_profile
    开发会用 virtualenv 来管理多个开发环境,virtualenvwrapper 使得virtualenv变得更好用

    管理环境

    首先我们创建一个python3.5的虚拟环境,当然系统里得先装好了python3.5。

    mkvirtualenv -p python py3env
    -p 后面的参数指定了python(也有可能要换成python3.2/python3.4/python3.5/等,具体要看你系统里面/use/bin/里面的文件是什么名字),如果去掉这个参数,就会使用系统默认的python。最后一个参数py3env是创建的这个环境的名字。

    执行完了之后,会自动切换到这个新创建的虚拟环境。我们会发现命令行提示符会发生改变,例如在我的机器上:从 [root@centos6 bin]# 变成了(py3env) [root@centos6 bin]#,最前面多了这个虚拟环境的名字。

    其他一些常用命令:

    deactivate                # 退出当前虚拟环境
    workon [虚拟环境名称]       # 使用某个虚拟环境
    rmvirtualenv [虚拟环境名称] # 删除某个虚拟环境
    lsvirtualenv              # 列出所有虚拟环境
    

    包管理

    在实际使用中,我们会用pip来管理python的包,而在虚拟环境里的包是和系统里的包分离开的,虚拟环境之间的包也是隔离开的。

    在生产环境中,我们可能需要将程序部署在很多机器上,如果能方便地把依赖的包同步到所有机器上能省去很多时间。

    可以在开发机器上执行下面这个命令,来列出所有的包并保存到packages.txt,其中-l参数是只列出当前虚拟环境的包:

    pip freeze -l > packages.txt
    然后在部署到生产环境的时候,把packages.txt也复制到每个机器,并在每个机器上执行:

    pip install -r packages.txt

    相关文章

      网友评论

          本文标题:Centos7安装Python3.5

          本文链接:https://www.haomeiwen.com/subject/vyxrattx.html