前面的文章已经介绍了在Windows上安装Python2和Python3了,现在介绍Linux系统上的安装。Ubuntu16.04上默认安装了Python2.7和Python3.5,Redhat和CentOS上默认安装了Python2.7,注意,不管我们是否要使用默认安装的版本,都不要卸载默认的Python. Ubuntu, Redhat,CentOS的使用占了Linux系统发行版中的大部分,在这些系统上使用Python开发可以直接用默认安装的版本,但是有时候我们需要指定版本,如Redhat中没有Python3,使用Django框架最新LTS版Django2.2需要Python3.6以上版本等.在默认的版本不满足我们的需要时,就需要我们自己安装了,所以这篇文章就是介绍在Ubuntu16.04上安装Python2.7.16的步骤,其他版本的安装步骤类似。
一、下载Python2.7.16的Ubuntu包
1.百度搜索Python,找到Python官网,点击进入https://www.python.org/
2.点击Python官网的Downloads,然后在下拉菜单中点Source code,进入版本选择页面
3.进入版本选择页面,可以在最上面看到有Python3的最新版和Python2的最新版,在这里点击Python2.7.16进入下载页面(如果需要下载其他版本可以向下滚动页面,选择自己需要的版本)
4.进入下载页面后,向下滚动鼠标,找到"Files",这里列出了Python2.7.16版本的不同操作系统的安装包或相关文件,在Ubuntu里面安装下载Gzipped source tarball,点击下载,等待一会就可以下载完成了
二、在Ubuntu上安装Python2.7.16
1.将下载完成的Python2.7.16安装包存放在Windows里,找到安装包,复制到Ubuntu虚拟机的桌面(不放桌面也可以,只是这样更方便),打开终端,cd Desktop 进入桌面,可以看到复制过来的Python-2.7.16安装包
2.现在要开始安装Python了,要先找安装目录,Linux在根目录下有一个目录/usr/,是Unix Software Resource(Unix 操作系统软件资源)的缩写,这个目录 相当于Windows操作系统的“C:Windows”和“C:Program files”这两个目录的综合体,所以一般把软件安装在这个目录之下.然后将桌面的软件安装包移动到/usr/下,需要在前面加sudo使用root权限
3.在/usr/目录下,将Python2.7.16的安装包解压,放在当前目录下
4.现在可以开始安装了,但是因为Ubuntu默认已经有Python2的其他版本了,如果直接安装会有文件路径的冲突,造成安装时报错,
(Makefile:1092: recipe for target 'libinstall' failed
make: *** [libinstall] Error 1),所以我们单独给Python2.7.16创建一个安装目录,cd /usr/local/,在/usr/local下创建安装目录python2.7.16
5.创建好安装目录后,回到解压好的Python-2.7.16目录下,可以看到里面有一个绿色的可执行文件configure,执行configure并指定文件前缀为我们刚创建的安装目录/usr/local/python2.7.16
6.回车执行,这是源码安装的第一步,对即将安装的Python2.7.16进行配置,检查当前的环境是否满足要安装的依赖关系.等待一分钟,等待执行结束
7.可以看到,现在Python-2.7.16下多了Makefile文件,这是编译文件,执行命令make开始编译
8.编译的时间会稍微长一点,大概3到5分钟,耐心等待结束
9.编译完成后,继续输入sudo make install进行安装,这里需要使用root权限,回车执行命令开始安装.(很多人喜欢直接make & make install ,编译和安装一起执行,这样是一样的,分开执行只是为了在出现问题时更好的定位问题)
10.等待两分钟,执行完成没有报错就安装成功了
11.现在cd到我们指定的安装目录/usr/local/python2.7.16/中,现在里面已经多了bin等四个目录,cd到bin目录下,可以看到里面有python,python2和python2.7等文件,执行./python打开当前目录下的python,就可以进入python2.7.16了,输入print("hello"),Python解释器打印hello测试成功,此时说明Python2.7.16已经安装成功了
三、创建Python2.7.16的软链接到/usr/bin/
1.在Python2.7.16安装完成后,我们指定安装目录/usr/local/python2.7.16/bin下的python可以进入python2.7.16,但是在其他位置(比如桌面)输入python,进入的则是之前的python版本
2.原因是我们输入命令时,系统会去/usr/bin/,/usr/local/bin/,/usr/sbin/,/usr/local/sbin等目录下寻找是否有这个可执行文件,而现在/usr/bin下已经有了python,python2,python2.7三个文件了,并且这三个文件是指向之前安装的其他Python版本的,所以直接输入python,python2,python2.7进入的都不是Python2.7.16
3.现在我们在/usr/bin/下创建一个软链接python27,指向我们安装的Python2.7.16,然后在这台Ubuntu虚拟机的任何位置执行python27,都是进入Python2.7.16
到现在,在Ubuntu上就可以正常使用Python2的最新版本Python2.7.16了,可以开始python开发了.