Python语言的发展历程和特点

电子说

1.3w人已加入

描述

从你开始学习编程的那一刻起,就注定了以后所要走的路—从编程学习者开始,依次经历实习生、程序员、软件工程师、架构师、CTO等职位的磨砺;当你站在职位顶峰的位置蓦然回首时,会发现自己的成功并不是偶然,在程序员的成长之路上会有不断修改代码、寻找并解决Bug、不停测试程序和修改项目的经历。

不可否认的是,只要你在自己的开发生涯中稳扎稳打,并且善于总结和学习,最终将会得到可喜的收获。

进入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月编程语言使用率统计表

C++

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所示的下载页面。

C++

图1-1 Python下载页面

(2)因为当前计算机的系统是Windows系统,所以单击“Looking for Python with a different OS? Python for”后面的Windows链接,出现如图1-2所示的Windows版下载界面。

C++

图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所示的下载对话框中,单击“下载”按钮后开始下载。

C++

图1-3 下载对话框界面

(4)下载成功后得到一个“.exe”格式的可执行文件,双击此文件开始安装。在第一个安装界面中勾选下面两个复选框,然后单击Install Now按钮,如图1-4所示。

C++

图1-4 第一个安装界面

(5)弹出如图1-5所示的安装进度对话框进行安装。

C++

图1-5 安装进度对话框

(6)安装完成后的界面如图1-6所示,单击“Close”按钮完成安装。

C++

图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 (default, Mar 9 2016, 22:15:05)

[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin

Type "help", "copyright", "credits", or "license" for more information.

>>>

上述输出表明,当前计算机默认使用的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 (default, Mar 22 2014, 22:59:38)

[GCC 4.8.2] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>>

上述输出表明,当前计算机默认使用的Python版本为Python 2.7.6。看到上述输出后,如果要退出Python并返回终端窗口,可按Ctrl + D组合键或执行命令exit()。

要想检查系统是否安装了Python 3,可能需要指定相应的版本,例如尝试执行命令python3。

$ python3

Python 3.6.0 (default, Sep 17 2016, 13:05:18)

[GCC 4.8.4] on linux

Type "help", "copyright", "credits" or "license" for more information.

>>>

上述输出表明,在当前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应用程序相同,而其中所写的代码是自动着色的。

C++

图1-9 IDLE的界面

IDLE常用的快捷键如表1-2所示。

1.3.2 使用Emacs

Emacs堪称“无所不能”的开发工具,很多人称之为最强大的文本编辑器。与Vim不同,Emacs没有模式编辑器,使用Emacs就像使用Windows的记事本一样,但Emacs比Windows的记事本的功能要强大得多。下载并安装Emacs工具的具体流程如下所示。

(1)登录gnu官方网站,在Windows栏目下单击main GNU FTP server链接,如图1-10所示。

C++

图1-10 单击main GNU FTP server链接

(2)在弹出的新页面中选择一个版本进行下载,如图1-11所示。

C++

图1-11 选择一个版本

(3)下载完成后将得到一个ZIP格式的压缩包,解压完成后,运行Emacs所在目录下bin目录中的runemacs.exe文件,即可启动Emacs工具,其界面如图1-12所示。

C++

图1-12 运行Emacs后的界面

认识第一段Python程序

经过本文前面内容的学习,已经了解了安装并搭建Python开发环境的知识。

1.4.1 编码并运行

(1)打开IDLE,依次单击File→New File,在弹出的新建文件中输入如下所示的代码。

print('同学们好,我的名字是——Python!')

print('这就是我的代码,简单吗?')

在Python语言中,“print”是一个输出函数,功能是,在命令行界面输出指定的内容,和C语言中的“printf”函数、Java语言中的“println”函数类似。本实例在IDLE编辑器中的效果如图1-13所示。

C++

图1-13 输入代码

(2)依次单击File→Save命令,将其另存为文件“first.py”,如图1-14所示。

C++

图1-14 另存为文件“first.py”

(3)按下键盘中的F5键,或依次单击Run→Run Module命令运行当前代码,如图 1-15所示。

C++

图1-15 运行当前代码

(4)本实例执行后会使用函数print()输出两行文本,执行后的效果如图1-16所示。

C++

图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,在命令行中输入如下所示的代码。

print('同学们好,我的名字是——Python!')

按Enter键后即可立即运行上述代码,执行效果如图1-17所示。

C++

图1-17 执行效果

(2)继续输入如下所示的代码。

print('这就是我的代码,简单吗?')

按Enter键后即可立即运行上述代码,执行效果如图1-18所示。

C++

图1-18 执行效果

技术解惑

1.5.1 提高开发效率——安装文本编辑器

Geany是一款简单的文本编辑器:它易于安装;让你能够直接运行几乎所有的程序(而无需通过终端来运行);使用不同的颜色来显示代码,以突出代码语法;在终端窗口中运行代码,让你能够习惯使用终端。建议使用Geany,除非你有充分的理由不这样做。

在大多数Linux系统中,都只须执行一条命令就可以安装Geany。

$ sudo apt-get install 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知道如何运行该程序,并以有益的方式突出其中的代码。

保存文件后,在其中输入如下所示的一行代码。

print("Hello Python world!")

如果在系统中安装了多个Python版本,就必须对Geany进行配置,使其使用正确的版本。

为此,可以依次选择菜单Build(生成)和 Set Build Commands(设置生成命令),此时将看到文字Compile(编译)和Execute(执行),它们旁边都有一个命令。在默认情况下,这两条命令都是python,要让Geany使用命令python3,必须做相应的修改。

如果在终端会话中能够执行命令python3,请修改编译命令和执行命令,让Geany使用Python 3解释器。为此,将编译命令修改成下面这样。

python3 -m py_compile "%f"

必须完全按上面的代码显示的那样输入这条命令,确保空格和大小写都完全相同。

将执行命令修改成下面这样。

python3 "%f"

同样,务必确保空格和大小写都完全与显示的相同。图1-19显示了该如何在Geany中配置这些命令。

现在开始运行程序hello_world.py,依次选择菜单Build和Execute,并单击Execute图标(两个齿轮)或按F5键后将弹出一个终端窗口,其中包含如下所示的输出。

Hello Python world!

------------------

(program exited with code: 0)

Press return to continue

如果没有看到这样的输出,请检查你输入的每个字符。你是不是将print的首字母大写了?是不是遗漏了引号或括号?编程语言对语法的要求非常严格,只要你没有严格遵守语法,就会出错。

C++

图1-19 在Linux中配置Geany,使其使用Python 3

1.5.3 在终端会话中运行Python代码

开发者可以打开一个终端窗口并执行命令python或python3,再尝试运行Python代码段。在检查Python版本时,你就这样做过。下面再次这样做,但是会在终端会话中输入如下代码行:

>>> print("Hello Python interpreter!")

Hello Python interpreter!

>>>

消息将直接转出到当前终端窗口中。请不要忘记,要关闭Python解释器,需要按Ctrl + D组合键或执行命令exit()。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分