如何在CentOS 7上安装Python 3
本教程将指导我们使用Software Collections(SCL)在CentOS 7系统上安装Python 3,同时使用发行版的默认Python版本2.7.
我们还将向我们展示如何创建Python虚拟环境。
Python是世界上最受欢迎的编程语言之一。
Python的语法简单易学,是和经验丰富的开发人员的理想选择。
Python是一种非常通用的编程语言。
我们可以使用它来执行几乎任何我们想做的事情,编写小型脚本,构建游戏,开发,创建机器学习算法,分析数据等等。
已经使用Python开发了许多流行的应用程序和,包括YouTube,DropBox,Reddit,Quora,Instagram,Pinterest。
对Python 2的支持将于2017年结束。
Python3是该语言的现在和将来。
启用软件集合(SCL)
Software Collections(也称为SCL)是一个社区项目,它使我们可以在同一系统上构建,安装和使用多个版本的软件,而不会影响系统默认软件包。
通过启用SCL,我们将可以访问核心存储库中不提供的较新版本的编程语言和服务。
CentOS 7附带了Python 2.7.5,这是CentOS基本系统的关键部分。
SCL允许我们在默认的python v2.7.5旁边安装新版本的python 3.x,以便“ yum”之类的系统工具将继续正常运行。
要启用SCL,我们需要安装CentOS SCL发行文件。
它是CentOS Extras存储库的一部分,可以通过运行以下命令进行安装:
sudo yum install centos-release-scl
在CentOS 7上安装Python 3
现在,我们可以访问SCL存储库,可以安装所需的任何Python 3.x版本了。
当前,可以使用以下Python 3集合:
- Python 3.3
- Python 3.4
- 的Python 3.5
- Python 3.6
在本教程中,我们将安装Python 3.6,这是撰写本文时可用的最新版本。
为此,请在CentOS 7终端上键入以下命令:
sudo yum install rh-python36
使用Python 3
一旦安装了软件包“ rh-python36”,请输入以下内容检查Python版本:
python --version
Python 2.7.5
我们会注意到,Python 2.7是当前shell程序中的默认Python版本。
要访问Python 3.6,我们需要使用Software Collection'scl'工具启动一个新的shell实例:
scl enable rh-python36 bash
上面的命令所执行的操作是调用脚本'/opt/rh/rh-python36/enable',该脚本会更改shell环境变量。
如果再次检查Python版本,我们会注意到Python 3.6现在是当前Shell中的默认版本。
python --version
Python 3.6.3
重要的是要指出,仅在此Shell会话中将Python 3.6设置为默认的Python版本。
如果退出会话或者从另一个终端打开新会话,则Python 2.7将是默认的Python版本。
安装开发工具
开发工具是构建Python模块所必需的。
要安装必要的工具和库,请输入:
sudo yum groupinstall 'Development Tools'
创建虚拟环境
Python的“虚拟环境”使我们可以将Python模块安装在特定项目的隔离位置,而不必全局安装。
这样,我们不必担心会影响其他Python项目。
在Python 3中创建新虚拟环境的首选方法是执行“ venv”命令。
假设我们要在用户主目录中创建一个名为“ my_new_project”的新Python 3项目,并匹配虚拟环境。
首先,创建项目目录并切换到该目录:
mkdir ~/my_new_projectcd ~/my_new_project
使用“ scl”工具激活Python 3.6:
scl enable rh-python36 bash
从项目根目录内部运行以下命令,以创建一个名为“ my_project_venv”的虚拟环境:
python -m venv my_project_venv
要开始使用虚拟环境,请通过键入以下内容将其激活:
source my_project_venv/bin/activate
激活环境后,shell提示符将以环境名称为前缀:
(my_project_venv) user@host:~/my_new_project$
从Python 3.4开始,在创建虚拟环境pip时,默认情况下会安装Python的软件包管理器。