2.1 Python语言介绍

2.1.1 Python的设计理念

Python崇尚优美、清晰、简单,是一种优秀并广泛使用的语言。

目前,Python在TIOBE排行榜中为第四名。此外,Python还是谷歌公司的第三大开发语言、Dropbox的基础语言、豆瓣的服务器语言。

在Python的开发过程中,社区起到了重要作用。Python的发明人Guido van Rossum认为自己不是全能型的程序员,因此一开始他就只负责制定框架。如果遇到太复杂的问题,则由社区内的其他人解决。社区中有多种多样的人才,他们不仅能解决Python发展过程中的许多问题,还可以处理创建网站、筹集基金等事情。

因此,由Python所衍生的许多大型项目在“合作、开放的心态”下取得了成功,这进一步促使了Python的发展。

基于这种开放的心态和合作,Python借鉴了几乎所有编程语言的优点。与此同时,Python还输出了它的设计理念,如Ruby就借鉴了Python,或者说Ruby的成功也代表了Python某些方面的成功。

2.1.2 Python的特点

Python是一种“胶水”语言,许多开源软件、人工智能的计算及大数据的实现,都是基于Python语言实现的。

在本书的许多案例中,都需要进行数据处理,而Python语言可以轻松处理Excel文件,也可以进行各种统计分析,这就使得程序员不必依赖于Excel来做分析。

需要注意的是,Python 2.0版本和Python 3.0版本有许多地方不兼容,尽管Python 2.6和Python 2.7被称为过渡版本,但是仍然有一些语句和规则与Python 3.0是不通用的。目前,Python 2.0系列已经不再维护,因此如果你想使用Python,要首选Python 3.0以上版本,目前的版本有Python 3.6和Python 3.7。

需要强调的是,Python还是一种网络编程语言,可以基于它进行网站的构建、分析、数据的抓取、构建服务器-客户端连接等,这使得公司基于数据流的业务,不必在多个语言之间进行接口的定义和传送,数据的传输也更加直接,在某种程度上比用API接口效率更高。

2.1.3 Python的优点

简单:Python是一种代表简单主义思想的语言。阅读一个设计良好的Python程序就感觉像是在观赏艺术品一样。Python的这种伪代码本质是它最大的优点之一,它能够使你专注于解决问题而不是去搞明白语言本身。

易学:Python语法简洁而清晰、容易学习、容易上手。这样的特点使得人们在学习过程中无须过度关注程序设计语言的具体形式细节,而可以将注意力放在程序自身的逻辑和算法上。

免费、开源:Python是FLOSS(自由/开放源码软件)之一。简单来说,你可以自由地发布这个软件的复制品、阅读它的源代码、对它进行改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。这也是为什么Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的Python的人创造并不断改进的。

解释型语言:这是Python的运行机制。计算机通常不能直接接收和执行高级语言编写的源程序,需要通过翻译程序翻译成0/1序列的机器语言,计算机的CPU或GPU才能进行执行。翻译有两种方式:一种是编译,另一种是解释。编译是指源程序代码先由编译器编译成可执行的机器代码,然后进行执行;解释是指源代码程序被解释器直接执行。

丰富的库:这是Python最吸引人的地方。全世界的爱好者、开发者为Python编写了众多的可完成各类任务的库,如Google,Microsoft,Facebook等IT巨头也在不断发布和维护几乎媲美商业软件的Python库。例如,著名的深度学习平台TensorFlow就是Google公司维护的Python库。

面向对象:Python既支持面向过程的编程又支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是由可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要语言相比,Python可以以一种非常强大而又简单的方式实现面向对象的编程。