不可否认的是,只要你在自己的开发生涯中稳扎稳打,并且善于总结和学习,最终将会得到可喜的收获。
对于一名程序开发初学者来说,究竟如何学习才能提高自己的开发技术呢?答案之一就是买合适的书籍进行学习。但是,市面上许多面向初学者的编程书籍中的大多数篇幅都是基础知识讲解,多偏向于理论,读者读了以后面对实战项目时还是无从下手。
如何实现从理论平滑过渡到项目实战,是初学者迫切需要解决的难题,为此,特意编写了本书。
本书用一本书的容量讲解了入门类、范例类和项目实战类3类图书的知识,并且对实战知识不是点到为止地讲解,而是深入地探讨。用“纸质书+视频和源程序+网络答疑”的方式,实现了“入门+范例演练+项目实战”的完美呈现,帮助读者从入门顺利过渡到适应项目实战的角色。
进入2018年后,身边越来越多的人说Python语言如日中天了,也有人说Python的发展速度像坐了火箭一般。究竟Python语言有什么神奇之处,让广大程序员们对它如痴如醉?
本文将详细介绍Python语言的发展历程和特点,和读者一起找到上述问题的答案。
Python语言基础
曾经风靡一时的热播剧《琅琊榜》有云:遥映人间冰雪样,暗香幽浮曲临江,遍识天下英雄路,俯首江左有梅郎……琅琊榜就和武侠小说中的高手排行榜差不多。
其实在编程语言中也有自己的“琅琊榜”,这就是TIOBE编程语言社区排行榜,榜单会每月更新一次,榜单的排名客观公正地展示了各门编程语言的地位。
1.1.1 编程世界的“琅琊榜”
TIOBE编程语言社区排名使用著名的搜索引擎(诸如Google、MSN、Yahoo!、Wikipedia、YouTube以及Baidu等)进行计算,在2017年上半年,Java语言和C语言依然是最大的赢家。其实在最近几年的榜单中,程序员们早已习惯了C语言和Java的“二人转”局面。表1-1是2017年12月榜单中的前几名排名信息。
表1-1 2017年12月编程语言使用率统计表
1.1.2 Python为什么这么火
相信TIOBE编程语言社区排行榜中的排名会出乎很多读者的意料,Python语言竟然排在PHP、JavaScript等众多常用开发语言的前面。这似乎不合乎常理,因为在印象中很少有人提及Python,反而经常听大家谈起C、C++、Java、C#和PHP,Python语言为什么这么火呢?笔者认为Python语言之所以如此受大家欢迎,主要有如下两个原因。
(1)简单
无论是对于广大学习者还是程序员,简单就拥有了最大的吸引力。既然都能实现同样的功能,人们有什么理由不去选择更加简单的开发语言呢?例如,在运行Python程序时,只需要简单地输入Python代码后即可运行,而不需要像其他语言(例如C或C++)那样需要经过编译和链接等中间步骤。
Python可以立即执行程序,这样便形成了一种交互式编程体验和不同情况下快速调整的能力,往往在修改代码后能立即看到程序改变后的效果。
(2)功能强大
Python语言可以用来作为批处理语言,写一些简单工具,处理一些数据,作为其他软件的接口调试等。
Python语言可以用来作为函数语言,进行人工智能程序的开发,具有Lisp语言的大部分功能。
Python语言可以用来作为过程语言,进行常见的应用程序开发,可以和VB等语言一样应用。
Python语言可以用来作为面向对象语言,具有大部分面向对象语言的特性,经常作为大型应用软件的原型开发语言,然后再用C++语言改写,而有些应用软件则直接使用Python来开发。
1.1.3 Python语言的特点
除了上一小节介绍的简单和功能强大外,Python语言还有如下特点。
(1)面向对象
Python是一门面向对象编程(面向对象编程缩写为“OOP”)的语言,它的类模块支持多态、操作符重载和多重继承等高级概念,并且以Python特有的简洁的语法和类型,面向对象十分易于使用。
除了作为一种强大的代码构建和重用手段以外,Python的面向对象特性使它成为面向对象语言(如C++和Java)的理想脚本工具。例如,通过适当地粘贴代码,Python程序可以对C++、Java和C#的类进行子类的定制。
(2)免费
Python的使用和分发是完全免费的,就像其他的开源软件一样,如Perl、Linux和Apache。开发者可以从Internet上免费获得Python的源代码。复制Python,将其嵌入你的系统或者随产品一起发布都没有任何限制。
(3)可移植
Python语言的标准实现是由可移植的ANSI C编写的,可以在目前所有的主流平台上编译和运行。现在从PDA到超级计算机,到处都可以见到Python程序的运行。Python语言可以在下列平台上运行(注意,这并不是全部,而仅仅是笔者所知道的一部分)。
Linux和UNIX系统。
微软Windows。
Mac OS(包括OS X和Classic)。
BeOS、OS/2、VMS和QNX。
实时操作系统,例如VxWorks。
Cray超级计算机和IBM大型机。
运行Palm OS、PocketPC和Linux的PDA。
游戏终端。
(4)混合开发
Python程序可以以多种方式轻易地与其他语言编写的组件融合在一起。例如,通过使用Python的C语言API可以帮助Python程序灵活地调用C程序。这意味着可以根据需要给Python 程序添加功能,或者在其他环境系统中使用Python。
例如,将Python与C或者C++写成的库文件混合起来,使Python成为一个前端语言和定制工具,这使Python成为一个很好的快速原型工具。出于开发速度的考虑,系统可以先使用Python实现,之后转移至C,这样可以根据不同时期性能的需要逐步实现系统。
安装Python
古人云:工欲善其事,必先利其器。在使用Python语言进行项目开发时,需要先搭建其开发环境。本节将首先详细讲解安装Python的知识,为读者步入本书后面知识的学习打下基础。
1.2.1 选择版本
因为Python语言是跨平台的,可以运行在Windows、Mac OS、Linux、UNIX和各种其他系统上,所以说Python可以安装在这些系统中。并且在Windows上写的Python程序,可以放到Linux系统上运行。
到目前为止,Python最为常用的版本有两个:一个是2.x版,一个是3.x版。
这两个版本是不兼容的,因为目前Python正在朝着3.x版本进化,在进化过程中,大量针对2.x版本的代码要修改后才能运行,所以,目前有许多第三方库还暂时无法在3.x版本上使用。
读者可以根据自己的需要选择进行下载和安装,本书将以Python 3.x版本语法和标准库进行讲解。1.2.2 在Windows系统中下载并安装Python
因为Python可以在Windows、Linux和Mac这当今三大主流的计算机系统中运行,所以本书将详细讲解在这3种操作系统中安装Python的方法。接下来,将首先讲解在Windows系统中下载并安装Python的过程。
(1)登录Python官方网站,单击顶部导航中的Downloads链接,出现如图1-1所示的下载页面。
图1-1 Python下载页面
(2)因为当前计算机的系统是Windows系统,所以单击“Looking for Python with a different OS? Python for”后面的Windows链接,出现如图1-2所示的Windows版下载界面。
图1-2 Windows版下载界面
图1-2所示的都是Windows系统平台的安装包,其中x86适合32位操作系统,x86-64适合64位操作系统。并且可以通过如下3种途径获取Python。
web-based installer:需要通过联网完成安装。
executable installer:通过可执行文件(*.exe)方式安装。
embeddable zip file:这是嵌入式版本,可以集成到其他应用程序中。
(3)因为笔者的计算机是64位操作系统,所以需要选择一个64位的安装包,当前(笔者写稿时)最新版本“Windows x86-64 executable installer”。
在如图1-3所示的下载对话框中,单击“下载”按钮后开始下载。
图1-3 下载对话框界面
(4)下载成功后得到一个“.exe”格式的可执行文件,双击此文件开始安装。在第一个安装界面中勾选下面两个复选框,然后单击Install Now按钮,如图1-4所示。
图1-4 第一个安装界面
(5)弹出如图1-5所示的安装进度对话框进行安装。
图1-5 安装进度对话框
(6)安装完成后的界面如图1-6所示,单击“Close”按钮完成安装。
图1-6 安装完成界面
(7)依次单击“开始”“运行”,输入cmd后打开DOS命令界面,然后输入“python”验证是否安装成功。弹出如图1-7所示的界面表示安装成功。
图1-7 表示安装成功
1.2.3 在Mac系统中下载并安装Python
在Mac OS X中都已经默认安装了Python,开发者只需要安装一个文本编辑器来编写Python程序即可,并且需要确保其配置信息正确无误。要想检查当前使用的苹果系统是否安装了Python,需要完成如下工作。
(1)打开终端窗口(和Windows系统中的cmd控制台类似)
打开“Applications/Utilities”文件夹,选择打开里面的Terminal,这样可以打开一个终端窗口。另外,也可以按下键盘中的“Command + 空格”组合键,再输入terminal并按回车键打开终端窗口。
(2)输入“python”命令
为了确定是否安装了Python,接下来,需要执行命令“python”(注意,其中的p是小写的)。如果输出了类似于下面的内容,指出了安装的Python版本,这表示Python已经安装成功。最后的“>>>”是一个提示符,让我们能够进一步输入Python命令。
上述输出表明,当前计算机默认使用的Python版本为Python 3.6.1。看到上述输出后,如果要退出Python并返回终端窗口,可按Control + D组合键或执行命令exit()。
1.2.4 在Linux系统中下载并安装Python
在众多开发者的眼中,Linux系统是专门为开发者所设计的。在大多数的Linux计算机中,都已经默认安装了Python。要在Linux系统中编写Python程序,开发者几乎不用安装什么软件,也几乎不用修改设置。要想检查当前使用的Linux系统是否安装了Python,需要完成如下工作。
(1)在系统中运行应用程序Terminal(如果使用的是Ubuntu,可以按下Ctrl + Alt + T组合键),打开一个终端窗口。
(2)为了确定是否安装了Python,需要执行“python”命令(请注意,其中的p是小写的)。
如果输出类似下面这样输出安装版本的结果,则表示已经安装了Python;最后的“>>>”是一个提示符,让我们能够继续输入Python命令。
上述输出表明,当前计算机默认使用的Python版本为Python 2.7.6。看到上述输出后,如果要退出Python并返回终端窗口,可按Ctrl + D组合键或执行命令exit()。
要想检查系统是否安装了Python 3,可能需要指定相应的版本,例如尝试执行命令python3。
上述输出表明,在当前Linux系统中也安装了Python 3,所以开发者可以使用这两个版本中的任何一个。在这种情况下,需要将本书中的命令python都替换为python3。在大多数情况下,在Linux系统上都默认安装了Python。
Python开发工具介绍
在安装Python后,接下来需要选择一款开发工具来编写Python程序。市面中有很多种支持Python的开发工具,下面将简要介绍几种主流的开发工具。
1.3.1 使用IDLE
IDLE是Python自带的开发工具,它是应用Python第三方库的图形接口库Tkinter开发的一个图形界面的开发工具,其主要特点如下所示。
跨平台,包括Windows、Linux、UNIX和Mac OS X。
智能缩进。
代码着色。
自动提示。
可以实现断点设置、单步执行等调试功能。
具有智能化菜单。
当在Windows系统下安装Python时,会自动安装IDLE,在“开始”菜单的Python 3.x子菜单中就可以找到它,如图1-8所示。
图1-8 “开始”菜单中的IDLE
在Linux系统下需要使用yum或apt-get命令进行单独安装。在Windows系统下,IDLE的界面如图1-9所示,标题栏与普通的Windows应用程序相同,而其中所写的代码是自动着色的。
图1-9 IDLE的界面
1.3.2 使用Emacs
Emacs堪称“无所不能”的开发工具,很多人称之为最强大的文本编辑器。与Vim不同,Emacs没有模式编辑器,使用Emacs就像使用Windows的记事本一样,但Emacs比Windows的记事本的功能要强大得多。下载并安装Emacs工具的具体流程如下所示。
(1)登录gnu官方网站,在Windows栏目下单击main GNU FTP server链接,如图1-10所示。
图1-10 单击main GNU FTP server链接
(2)在弹出的新页面中选择一个版本进行下载,如图1-11所示。
图1-11 选择一个版本
(3)下载完成后将得到一个ZIP格式的压缩包,解压完成后,运行Emacs所在目录下bin目录中的runemacs.exe文件,即可启动Emacs工具,其界面如图1-12所示。
图1-12 运行Emacs后的界面
认识第一段Python程序
经过本文前面内容的学习,已经了解了安装并搭建Python开发环境的知识。
1.4.1 编码并运行
(1)打开IDLE,依次单击File→New File,在弹出的新建文件中输入如下所示的代码。
在Python语言中,“print”是一个输出函数,功能是,在命令行界面输出指定的内容,和C语言中的“printf”函数、Java语言中的“println”函数类似。本实例在IDLE编辑器中的效果如图1-13所示。
图1-13 输入代码
(2)依次单击File→Save命令,将其另存为文件“first.py”,如图1-14所示。
图1-14 另存为文件“first.py”
(3)按下键盘中的F5键,或依次单击Run→Run Module命令运行当前代码,如图 1-15所示。
图1-15 运行当前代码
(4)本实例执行后会使用函数print()输出两行文本,执行后的效果如图1-16所示。
图1-16 执行效果
1.4.2 其他运行方式
1.命令行运行方式
在Windows系统下还可以直接使用鼠标双击的方式来运行Python程序。如果通过双击运行上面编写的程序文件“first.py”,可以看到一个命令行窗口首先出现,然后又关闭,由于很快,因此看不到输出内容,这是因为程序运行结束后立即退出了。为了能看到程序的输出内容,可以按以下步骤进行操作。
(1)单击“开始”菜单,在“搜索程序和文件”文本框中输入“cmd”,并按Enter键,打开Windows的命令行窗口。
(2)输入文件first.py的绝对路径及文件名,再按Enter键运行程序。也可以使用cd命令,进入文件“first.py”所在的目录,如“D:\lx”,然后在命令行提示符下输入“first.py”或者“python first.py”,按Enter键即可运行。
2.交互式运行方式
Python程序的交互式运行方式是指一边输入程序,一边运行程序。具体操作步骤如下所示。
(1)打开IDLE,在命令行中输入如下所示的代码。
按Enter键后即可立即运行上述代码,执行效果如图1-17所示。
图1-17 执行效果
(2)继续输入如下所示的代码。
按Enter键后即可立即运行上述代码,执行效果如图1-18所示。
图1-18 执行效果
技术解惑
1.5.1 提高开发效率——安装文本编辑器
Geany是一款简单的文本编辑器:它易于安装;让你能够直接运行几乎所有的程序(而无需通过终端来运行);使用不同的颜色来显示代码,以突出代码语法;在终端窗口中运行代码,让你能够习惯使用终端。建议使用Geany,除非你有充分的理由不这样做。
在大多数Linux系统中,都只须执行一条命令就可以安装Geany。
1.5.2 快速运行Hello World程序
为了编写第一个Python程序,需要启动Geany。为此,可以按超级(Super)键(俗称Windows键),并在系统中搜索Geany。找到Geany后,双击就可以启动它。再将其拖曳到任务栏或桌面上,以创建一个快捷方式。
接下来,创建一个用于存储项目的文件夹,并将其命名为python_work(在文件名和文件夹名中,最好使用小写字母,并使用下划线来表示空格,因为这是Python采用的命名约定)。
返回Geany,依次选择菜单“File”和“Save As”,将当前的空Python文件保存到文件夹“python_work”中,并将其命名为“hello_world.py”。扩展名“.py”告诉Geany文件包含的是Python程序。它还让Geany知道如何运行该程序,并以有益的方式突出其中的代码。
保存文件后,在其中输入如下所示的一行代码。
如果在系统中安装了多个Python版本,就必须对Geany进行配置,使其使用正确的版本。
为此,可以依次选择菜单Build(生成)和 Set Build Commands(设置生成命令),此时将看到文字Compile(编译)和Execute(执行),它们旁边都有一个命令。在默认情况下,这两条命令都是python,要让Geany使用命令python3,必须做相应的修改。
如果在终端会话中能够执行命令python3,请修改编译命令和执行命令,让Geany使用Python 3解释器。为此,将编译命令修改成下面这样。
必须完全按上面的代码显示的那样输入这条命令,确保空格和大小写都完全相同。
将执行命令修改成下面这样。
同样,务必确保空格和大小写都完全与显示的相同。图1-19显示了该如何在Geany中配置这些命令。
现在开始运行程序hello_world.py,依次选择菜单Build和Execute,并单击Execute图标(两个齿轮)或按F5键后将弹出一个终端窗口,其中包含如下所示的输出。
如果没有看到这样的输出,请检查你输入的每个字符。你是不是将print的首字母大写了?是不是遗漏了引号或括号?编程语言对语法的要求非常严格,只要你没有严格遵守语法,就会出错。
图1-19 在Linux中配置Geany,使其使用Python 3
1.5.3 在终端会话中运行Python代码
开发者可以打开一个终端窗口并执行命令python或python3,再尝试运行Python代码段。在检查Python版本时,你就这样做过。下面再次这样做,但是会在终端会话中输入如下代码行:
消息将直接转出到当前终端窗口中。请不要忘记,要关闭Python解释器,需要按Ctrl + D组合键或执行命令exit()。
叶维忠 著
本书循序渐进、由浅入深地详细讲解了Python 3语言开发的核心技术,并通过具体实例的实现过程演练了各个知识点的具体使用流程。全书内容循序渐进,以“技术解惑”和“范例演练”贯穿全书,引领读者全面掌握Python 3语言。
书中共有900多个实例和范例、300多个正文实例、600多个拓展范例、77个课后练习、63个技术解惑、两大综合案例,每个知识点除了一个实例外,还有两个拓展范例,达到举一反三的效果。可以说一本书包括三本书的内容:基础、实例、综合案例。
长按二维码,可以关注我们哟
每天与你分享IT好文。
在“异步图书”后台回复“关注”,即可免费获得2000门在线视频课程
异步图书福利送不停
邀请10名好友关注10天直接获取异步图书一本(点击文字获取活动详情哦)
点击阅读原文,购买《Python编程从入门到精通》