这里将告诉您Python原来这么好学-1.2节: 在Linux中安装python,具体操作过程:在Linux系统的主要发行版中,按其软件包格式来进行划分,可分为Deb系以及RPM系操作系统。Linux系统与Windows系统有一个很重要的区别,Linux系统完全免费,开放源代码,所以Linux系统才会有这么多分支。

python和linux关系 python和linux的区别_x系统

这是一本教同学们彻底学通Python的高质量学习教程,认真地学习每一章节的内容,每天只需学好一节,帮助你成为一名卓越的Python程序员:

本教程面向的是零编程基础的同学,非科班人士,以及有一定编程水平的中高级程序员。

1.2.1 Linux系统分类

在python官网中同时提供了针对Linux系统的安装包,在Linux系统的主要发行版中,按其软件包格式来进行划分,可分为Deb系以及RPM系操作系统。

Linux系统与Windows系统有一个很重要的区别,Linux系统完全免费,开放源代码,所 以Linux系统才会有这么多分支。

Deb系比较有代表性的是Ubuntu、Debian。Ubuntu主要用来做桌面操作系统,Debian主要用来做服务器操作系统。

python和linux关系 python和linux的区别_Python_02

python和linux关系 python和linux的区别_x系统_03

RPM系主要用来做服务器操作系统,比较有代表性的是Redhat、CentOS:

python和linux关系 python和linux的区别_python和linux关系_04

python和linux关系 python和linux的区别_Python_05

对Linux系统感兴趣的初学者,可以通过Vmware或者VirtulBox等工具,在windows系统中创建一个虚拟机, 然后下载Linux系统的镜像文件,在虚拟机中运行Linux系统。

1.2.2 在Linux系统中安装python

在本节的教程中,笔者以RPM系中的CentOS系统为例,来演示如何在Linux中安装python。

请读者按照以下步骤来进行操作:

(1) 下载python源码包

打开python的源码包下载页面:https://www.python.org/downloads/source/

python和linux关系 python和linux的区别_python和linux关系_06

点击Latest Python 3 Release 链接,进入python源码包的下载页面。在下载页面中下滑至页面底部,再直接点击Gzipped source tarball链接,下载gzip格式的python源码压缩包:

python和linux关系 python和linux的区别_python_07

在Linux系统中也可以直接通过wget命令在命令行中下载python3的源码包。

python源码包的下载链接:

https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz

使用wget命令进行下载的用法:

wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz

如需下载其它版本的python,直接将链接中的版本号进行替换即可,例如下载python3.5.1:

https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz

(2) 上传python源码包

将gzip压缩包通过FTP等工具上传至你的Linux系统,然后使用Linux的tar命令进行解压。

笔者下载的压缩包文件为Python-3.7.4.tgz,解压的命令为:

tar -xvzf Python-3.7.4.tgz

解压后的目录为Python-3.7.4, 在命令行中执行cd Python-3.7.4命令进入源码目录。

目录结构如下图所示:

python和linux关系 python和linux的区别_Python_08

初学者需要对Linux系统有一定熟悉,会使用常用命令,例如截图中的 "ls" 命令其实是英文单词"list"的缩写, 有"列出"的意思。

ls命令更多的含义及用法,读者可以查阅官方文档或善用搜索引擎。

Linux中的configure与make

configure是Linux中的脚本配置工具,用来对源码的当前安装环境进行检测,若检测无误,

会在当前目录生成一个供源码编译的Makefile脚本文件。

make是Linux系统下的编译安装工具,用来解释执行makefile文件中的编译以及安装命令。

(3) 生成python的Makefile文件

在当前目录Python-3.7.4下执行./configure,会生成一个Makefile文件。

使用configure命令生成Makefile文件时,可以指定--prefix参数,来指定python的安装目录。

语法形式为--prefix="你自定义的安装目录的路径",若无指定这个参数,那么python在linux中的 默认安装路径为/usr/local。

在Makefile文件中定义了源程序进行编译、链接、安装的规则,通过Makefile文件可以对项目源 程序进行自动化编译。

执行configure命令后的输出:

python和linux关系 python和linux的区别_在学Python前学Linux_09

(4) 编译python

configure命令结束后,会在当前目录生成一个Makefile文件,然后输入 make命令源码编译python,命令输出如下图所示:

python和linux关系 python和linux的区别_python_10

(5) 安装python

编译成功后,执行sudo make install 命令开始安装python,若无指定安装目录,则默认的安装目录为/usr/local, 对应的python解释器则安装于/usr/local/python3/bin目录下。

安装完毕以后,在命令行中执行/usr/local/python3/bin/python3.7 -V, 可以看到python的版本信息。

(6) 设置软链接

安装的python可以通过绝对路径的方式来执行,如在第6步中的/usr/local/python3/bin/python3.7,每次敲一大段路径来执行python未免麻烦。

在Linux系统中可以给安装的python设置软链接,这里的软链接类似于Windows系统的文件快捷方式。

执行以下命令来给python设置软链接:

ln -s /usr/bin/python3 /usr/local/python3/bin/python3.7

在ln命令中,是将左边的路径设置为右边路径的软链接。 /usr/bin目录已经被添加至Linux的环境变量PATH中,所以执行python3相当于执行/usr/bin/python3。

pip是python的包管理工具,执行以下命令为pip设置软链接:

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

在后面介绍python中的模块管理时,会对pip进行详细讲解。

1.2.3本节内容知识脑图

通过下面的知识脑图,来对本节的学习内容进行复习:

python和linux关系 python和linux的区别_python和linux关系_11

1.2.4本节知识要点

(1) 在Linux系统的主要发行版中,按其软件包格式来进行划分,可分为Deb系以及RPM系操作系统。

(2) Deb系比较有代表性的是Ubuntu、Debian。Ubuntu主要用来做桌面操作系统, Debian主要用来做服务器操作系统。 RPM系主要用来做服务器操作系统, 比较有代表性的是Redhat、CentOS。

(3) configure是Linux中的脚本配置工具,用来对源码的当前安装环境进行检测, 若检测无误,会在当前目录生成一个供源码编译的Makefile脚本文件。 make是Linux系统下的编译安装工具,用来解释执行makefile文件中的编译以及安装命令。

1.2.5 课后习题

(1)为什么Linux系统会有这么多分支?简述其主要原因。

(2)源码安装与1.1节介绍的安装方式有什么区别?

(3)请读者自行学习在windows系统中搭建一台运行Linux系统的虚拟机。