在centos7中安装和启用不同版本的Python的方法
本文章将指导您使用SCL(Software Collections)在Centos7上安装并使用Python3,并且不影响Centos7默认Python2.7环境的使用。
官方资源
启用Software Collections(SCL)仓库
1 | sudo yum install centos-release-scl |
在centos7中安装Python
现在我们能够访问SCL仓库来安装任意需要的Python版本,以Python3为例,目前提供了如下几个版本
Python 3.3
Python 3.4
Python 3.5
Python 3.6
我们将使用如下的命令来安装Python 3.6,在命令终端中输入:
1 | sudo yum install rh-python36 |
使用Python3
在这之前,我们先输入下面的命令检查一下Python版本1
python --version
现在这个结果是当前Shell中Centos7默认的python版本,为了使用刚才安装的python3.6,您需要使用下面的命令来运行1
sudo scl enable rh-python36 bash
这个时候如果我们再次使用python --version
检查发现python版本已经变为python3.6
,在这个bash会话中,默认的python会被切换为3.6版本,直到你输入exit,退出会话。
注意:输出的这个版本仅在当前的bash会话中有效,如果您关闭当前bash会话尝试另开新的bash会话,其Python版本将仍然是默认的Python2.7版本
额外命令
查看已安装的scl包
1 | scl --list |
列出scl仓库中的python相关包
1 | sudo yum list rh-python\* |
使用Python做开发
安装开发工具库
在构建Python modules的使用需要相关的工具库,使用下面的命令安装1
sudo yum groupinstall 'Development Tools'
创建Python虚拟环境
Python虚拟环境允许您为项目指定不同的Python版本,现在我们在主目录创建一个名为my_new_project
的Python3项目目录,并为其设定python虚拟环境。1
2mkdir ~/my_new_project
cd ~/my_new_project
激活python3.61
scl enable rh-python36 bash
在项目根目录创建名为my_project_venv
的虚拟环境1
python -m venv my_project_venv
通过下面的命令来激活python虚拟环境1
source my_project_venv/bin/activate
激活后,在shell界面中将会带上对应命名的环境名称前缀。