CentOS怎样安装Python3.6

由于centos7原本就安装了Python2,而且这个Python2不能被删除,因为有很多系统命令,比如yum都要用到。

[root@VM_105_217_centos Python-3.6.2]# python
Python 2.7.5 (default, Aug  4 2017, 00:39:18)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.

输入Python命令,查看可以得知是Python2.7.5版本

输入

which python

可以查看位置,一般是位于/usr/bin/python目录下。

下面介绍安装Python3的方法

首先安装依赖包

yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

然后根据自己需求下载不同版本的Python3,我下载的是Python3.6.2

wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz

如果速度不够快,可以直接去官网下载,利用WinSCP等软件传到服务器上指定位置,我的存放目录是/usr/local/python3,使用命令:

mkdir /usr/local/python3

建立一个空文件夹

然后解压压缩包,进入该目录,安装Python3

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

最后创建软链接

ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

ll yum*
查看/usr/bin目录下有哪些yum文件
把这些文件的第一行#!/usr/bin/python改为#!/usr/bin/python2
因为yum是依赖python的,所以我们修改了默认的python,就要修改yum,让其运行指向python2

修改urlgrabber配置文件
vim /usr/libexec/urlgrabber-ext-down
把第一行#!/usr/bin/python 改为 #!/usr/bin/python2

二、安装virtualenv

yum源安装:

yum install python-virtualenv

virtualenv实际上是一个python包,所以我们可以用easy_install或者pip安装。

easy_install安装方式:

easy_install virtualenv

三、创建python虚拟环境

使用virtualenv命令创建python虚拟环境:virtualenv [虚拟环境名称]。

virtualenv env1

执行后,在本地会生成一个与虚拟环境同名的文件夹。

如果你的系统里安装有不同版本的python,可以使用–python参数指定虚拟环境的python版本:

virtualenv -p /usr/local/python3/bin/python3.6 env1

实测默认情况下虚拟环境不会依赖系统环境的global site-packages。比如系统环境里安装了MySQLdb模块,在虚拟环境里import MySQLdb会提示ImportError。如果想依赖系统环境的第三方软件包,可以使用参数–system-site-packages。此外,也可使用virtualenvwrapper的toggleglobalsitepackages命令控制当前环境是否使用global site-packages。

virtualenv –system-site-packages env1

四、启动虚拟环境

进入虚拟环境目录,启动虚拟环境,如下:

cd env1/

source bin/activate

  python -V
  此时命令行前面会多出一个括号,括号里为虚拟环境的名称。以后easy_install或者pip安装的所有模块都会安装到该虚拟环境目录里。

进入cd /env1/目录

后台运行执行:nohup python2 test.py &

五、退出虚拟环境

退出虚拟环境:deactivate

六、使用virtualenvwrapper

virtualenvwrapper是virtualenv的扩展工具,可以方便的创建、删除、复制、切换不同的虚拟环境。

1.安装virtualenvwrapper

    easy_install virtualenvwrapper
  2.创建一个文件夹,用于存放所有的虚拟环境:
    mkdir py_vm   (目录自定义)
  3.设置环境变量,把下面两行添加到~/.bashrc里。
    export WORKON_HOME=/home/work/py_vm (绝对路径)
    source /usr/bin/virtualenvwrapper.sh
    然后就可以使用virtualenvwrapper了。
  4.创建虚拟环境:mkvirtualenv [虚拟环境名称]
    mkvirtualenv env2
    mkvirtualenv env3
    注意:mkvirtualenv可以使用virtualenv的参数,比如–python来指定python版本。创建虚拟环境后,会自动切换到此虚拟环境里。虚拟环境目录都在  WORKON_HOME里。
  5.列出所有虚拟环境:lsvirtualenv -b
  6.启动/切换虚拟环境:workon [虚拟环境名称]
  7.进入当前环境的目录:cdvirtualenv
    在环境里执行:cdvirtualenv

  8.删除虚拟环境:rmvirtualenv [虚拟环境名称]

9.cpvirtualenv 复制环境

cpvirtualenv env1 env3 (复制env1到env3)

10.lssitepackages 列出当前环境中site-packages内容  (在环境中执行)

11.cdsitepackages 清除环境内所有第三方包