1.3 Python 开发环境的搭建
所谓编程语言,意指“与计算机交流时使用的语言”。它是一种被标准化的交流技巧,用于连接程序员的思维和计算机的操作。学习编程语言的第一关,就是安装和环境配置。我们必须与计算机约定如何理解代码、指令和语法,才能够顺利地与计算机交流,赋予它复杂的功能。Python便是其中的一种“方言”。
本节将向大家详细介绍,如何在不同的操作系统上快捷地使用Python进行编程实现。
1.3.1 Python安装
对于新手,Python及其第三方模块在安装环节有许多已知的难题。比如源码编译的安装方式、环境变量的配置、不同模块之间的版本依赖问题。如果陷入其中的某一个泥潭之中,将浪费初学者大量的时间,消磨热情。当然,如果读者能独立克服,就能熟悉相关的重要概念,大有裨益。
为了能让读者顺利阅读本书的后续内容,以及避免不必要的麻烦,我们将采用更加简单的安装方式。本书使用的是Python的科学计算发行版——Anaconda。除Python本身之外,Anaconda囊括了科学计算和数据分析所需的主流模块,独立的包管理工具Conda[1] 以及两款不同风格的编辑器Jupyter和Spyder,具有开源精神且支持学术用途的免费额外性能提升。官方软件下载地址为:https://www.continuum.io/downloads。
注意 本书使用的是当前主流的Python 2.7版本,有较多的网络参考资料。截至本书完稿时,Python作者宣布Python 2.x系列将会在2020年停止更新,Python 2.7是最后一个版本。Python 3.x拥有一系列重大的更新,包括一些基础的语法。在未来的日子里,越来越多的主流模块将逐渐转向Python 3.x版本。在社区真正成熟之前,我们建议入门级读者先熟练使用Python 2.7。
1.Windows下安装Python
Anaconda的存在使得在Windows系统中安装Python得到极度简化,直接前往官方网站找到对应的下载内容(图1-5),并选择Python 2.7对应的安装包,注意区分32位和64位的版本。
图1-5 Windows下Anaconda的两个主要版本
下载后运行Anaconda的安装程序,这里大部分的操作和一般软件的安装无异,需要注意的是:如图1-6所示,Anaconda默认会自动改写环境变量配置参数,使得用户能在任何的路径下使用Python命令行模式。
图1-6 Anaconda安装界面
如果读者自行安装原始的Python版本,极容易忽略这一步,从而走入思维的盲区,导致永远不能自行安装成功。这也是我们推荐使用科学计算发行版Anaconda的原因。
2.Linux下安装Python
大多数Linux发行版,如 CentOS、Debian、Ubuntu 等,都已经自带了Python 2.x的主程序。因此,额外安装Anaconda需要做好管理的工作,避免两个不同版本的Python冲突,导致不必要的错误。如果读者确定内置版Python能够兼容书中代码,亦可不额外安装Anaconda。
下面介绍如何安装Anaconda,并避免与内置版的Python冲突,如图1-7所示。本教程以Ubuntu 16.06为例。
1)前往官方网站下载对应版本的Anaconda,默认情况下,Linux会自动将下载所得文件归档在“下载”文件夹中。
2)假设下载所得文件在“下载”这一文件夹中,如果不是,请替换路径,并输入下面的命令,以执行批处理指令,安装Anaconda。
$ bash ~/下载 /Anaconda2-4.0.0-Linux-x86_64.sh
图1-7 Anaconda安装界面
安装过程中,将会在屏幕上打印出用户协议许可,你需要利用Enter继续阅读。阅读至文件末尾,输入yes并敲击Enter键来表示你同意以上内容并使用默认路径开始安装。
3)如图1-8所示,输入yes来确认允许Anaconda为你自动配置环境变量PATH。
图1-8 安装过程
4)当看到图1-9中的欢迎信息之后,代表已经成功安装Anaconda。然后我们执行下面的命令,将Anaconda的位置加载至环境变量PATH的开头,使得当我们使用Python时,总是优先使用Anaconda版。
$ export PATH="$HOME/anaconda2/bin:$PATH"
之后,我们可以直接输入python,以检查是否能够正确使用Anaconda版的Python。
图1-9 手动改写优先级
3.Mac下安装Python
类似Windows下的安装,Mac OS X系统用户可以直接前往官方网站下载一个图形化安装程序。同时,因为OS X系统是基于UNIX内核开发的,所以我们也能够打开终端,通过命令行的方式来安装。这里主要叙述利用终端安装的方法。
1)下载OS X下对应版本的Anaconda,如图1-10所示。
注意 利用终端安装Anaconda实际上是在进行“源码编译”。后续步骤中需要的是二进制文件(Command-Line Installer),而非图形化的安装界面(Graphical Installer)。
图1-10 OS X下Anaconda的两个主要版本
2)按下Alt+Space,打开Search界面,输入terminal,单击搜索出来的“Terminal”(终端)图标。
3)输入下面的命令,执行批处理指令,安装Anaconda,如图1-11所示。
$ bash~/Downloads/Anaconda2-4.0.0-MacOSX-x86_64.sh
图1-11 OS X中安装Anaconda
安装过程中,将会在屏幕上打印出用户协议许可,你需要利用Enter继续阅读。阅读至文件末尾,输入yes并敲击Enter键来表示你同意以上内容并使用默认路径开始安装。
4)输入yes来确认允许Anaconda为你自动配置环境变量PATH。
5)与Linux下安装类似,同样需要将Anaconda的位置加载至环境变量PATH的开头,使得当我们使用Python时,总是优先使用Anaconda版。
$ export PATH="$HOME/anaconda2/bin:$PATH"
之后,我们可以直接输入python,以检查是否能够正确使用Anaconda版的Python。
1.3.2 Python初识
1.命令行版本的Python Shell-Python(Command)
以Windows系统为例,安装Python后,你可以在开始菜单中,找到对应的Command Line版本的Python Shell,或者同时按下Win+R键,输入cmd并按回车,打开命令窗口,如图1-12所示。在命令窗口中输入python即可使用进入Python的命令行模式。
图1-12 Python命令行窗口(1)
其中,可以看到对应的Python版本信息和系统信息。我们可以在标识符“>>>”后面输入代码,程序就会马上返回一个结果,如图1-13所示。
图1-13 Python命令行窗口(2)
Python Shell是交互式Shell,交互式是指当你输入代码到Python Shell中时就可以动态地看到相应的返回结果。
2.带图形界面的Python Shell-IDLE(Python GUI)
下面将要介绍的是带图形界面的Python GUI。在Windows下的所有程序上搜索IDLE,就可以直接打开Python Shell-IDLE。打开后界面如图1-14所示。
图1-14 Python GUI
我们同样可以在这个界面上输入代码,结果和在Command Line上输入的结果一样。但在这个界面上我们可以通过菜单栏的File–>New File创建Python脚本,在Python脚本上写多行代码,保存为.py文件后并运行该脚本,而在Command Line上运行多行代码只能一行接着一行输入并按回车输出,显得十分繁琐。运行Python脚本实际上也是按顺序运行每行的代码,运行脚本后将回到Python GUI界面,这时候Python已经存储脚本运行后的数据,我们可以在界面上继续输入代码,如图1-15所示。本书的代码都会放在Python脚本中,方便读者阅读和运行。
图1-15 Python GUI脚本界面
3.第三方Python IDE
IDE是集成开发环境(Integrated Development Environment)的英文简称。而第三方IDE通常聚合了更强大的功能,包括代码版本管理、项目代码管理、代码自动补全等。PyCharm就是这样一个跨平台的、多功能的集成开发环境,主要分为免费社区版(见图1-16)和付费商业版。
图1-16 PyCharm社区版
如图1-17所示,在选择创建项目以及确定项目存储路径之后,我们能看到一个清晰简洁的界面。左侧栏是项目管理窗口,负责组织Python实现的项目中所涉及的全部代码和数据文件。右边是正式的编辑区。在选择创建新的Python File之后,将能配合内置的自动补全、代码提示、调试运行功能进行代码的编辑、改正和优化。同时,它还能自动结合Git进行代码版本控制。有兴趣的读者可以自行查找资料。当我们需要做一个大型项目,代码量较多时,用带有项目管理功能的PyCharm会更加方便。
图1-17 PyCharm新建Python File
1.3.3 与读者的约定
1.排版格式说明
本书的示例代码格式分为两种,一种是Python IDLE的命令行代码,带有“>>>”。命令行代码可能马上会返回结果,这个结果会紧贴在命令行代码的下一行,结果的输出不带有“>>>”。
例如:
>>>x = 1 >>>x 1
另一种格式是带有上下分隔线的代码清单,这种格式用于展示某个完整的知识点。为读者阅读方便,当代码清单出现输出语句时,我们都把输出结果放在下一行,并用注释“#result:”标示。如代码清单1-1所示:
代码清单1-1 某个知识点
print 1 # result: 1 print 'Hello Python' # result: Hello Python
其中“1-1”表示第1章第1个代码清单。为了叙述方便,一个完整的程序可能被拆分到多个代码清单中,在同一小节中的后续代码中,有可能会沿用先前已声明的变量。
2.示例代码使用说明
本书默认支持的Python版本为2.7.11,其中书中讲解的模块对应的版本号如表1-1所示。
表1-1 模块版本说明
本书附件资源按照章节组织,在代码附件的目录下会有第1章、第2章、第3章等子章节目录。在章节目录下包含了2个文件夹:“示例程序”文件夹和“上机实验”文件夹。“示例程序”文件夹包含3个子目录:code、data、tmp。其中,code包含正文中每个章节的全部代码清单;data包含代码清单中所使用的数据文件;tmp文件夹中包含示例程序运行的结果文件。在部分章节中,上述3个文件夹可能为空。“上机实验”文件夹主要针对每章最后的上机实验,给出了上机实验的参考答案。其子目录结构与示例程序一致。
读者下载附件资源后[2] ,直接使用Python运行对应的代码脚本(.py)即可观察结果。值得注意的是,使用Anaconda的读者只需保持目录结构即可完整运行程序,自行安装Python的读者,请确保你的模块版本与表1-1一致。
[1] Conda在升级模块时,能够递归地寻找需要升级的前置模块,自行解决模块的版本依赖问题。
[2] 具体资源下载地址见前言内容。——编辑注
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论