本节书摘来自异步社区《Python编程初学者指南》一书中的第1章,第1.2节,作者[美]Michael Dawson,王金兰 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.2 Python简介
Python是一种功能强大且易于使用的编程语言,由Guido van Rossum于1991年首次发布。读者可以用Python非常迅速地编写出一个小项目。不过,Python也在不断成长,现在已经可以用来编写强调任务的商业应用程序了。
如果仔细翻阅Python的文档,就可以发现其中大量引用了spam、eggs和数字42。这些全都是向Monty Python(英国喜剧剧团,Python这个名称就来源于此)致敬的。尽管Guido van Rossum是以这个剧团的名称来命名Python的,但Python语言的正式吉祥物还是变成了一条大蟒蛇(其实这样也好,要把六个英国喜剧演员的头像放到一个程序图标中确实不太容易)。
市面上的编程语言有很多,Python到底牛在哪?
1.2.1 Python易于使用
任何编程语言的主要目的就是在程序员的大脑与计算机之间构建起一座桥梁。大部分流行的编程语言(如Visual Basic、C#、Java)被认为是高级语言,也就是说,相对于机器语言,它们更接近于人类语言。它们确实也是如此。而Python(包括它那简明扼要的规范)则更接近于英语。创建Python程序是非常简单的,以至于人们都说它是“以思考的速度编程”。Python的简单易用对于专业程序员而言就意味着生产力。跟其他许多流行的编程语言相比,Python程序会更短一些,所需的编程时间也会更少一些。
1.2.2 Python功能强大
Python具备现代编程语言所应该具备的一切功能。读完本书之后,读者将可以编写带有GUI、能够处理文件、能够使用各种数据结构的程序。
Python非常强大,不仅吸引了全世界的开发人员,甚至连Google、IBM、Industrial Light & Magic、Microsoft、NASA、Red Hat、Verizon、Xerox、Yahoo!等企业也对它钟爱有加。专业的游戏开发人员也在使用Python。Electronic Arts、2K Games、Disney Interactive Media Group都发布过含有Python代码的游戏。
1.2.3 Python是面向对象的
面向对象编程(Object-oriented programming,OOP)是一种利用计算机解决问题的现代手段,它指的是一种在程序中直观地表示信息和动作的方式。虽然它不是编写程序的唯一手段,但对于大项目而言,它确实是最好的那种。
诸如C#、Java、Python这样的语言都是面向对象的。但Python做得更好一些。在C#和Java中,OOP是必须的。这也就使得小程序也必须得拥有不必要的复杂度,而且还要求新手们必须事先了解一大堆的东西才行。而Python就不同了。在Python中,OOP不是必须的。用户随时都可以用上OOP所带来的任何功能,而且还可以只在有需要的时候才用。遇到一个完全不需要OOP的小程序?没问题。遇到一个需要OOP且需要一群人一起开发的大项目?还是没问题。Python不仅功能强大,而且灵活性也非常好。
1.2.4 Python是一种“胶水”语言
Python可以跟其他语言(比如C、C++、Java等)结合使用。也就是说,程序员在用Python编程时可以用上一些已经用其他语言写好的东西。此外,这也意味着人们可以充分利用其他语言的优势。比如说,在享受Python那简洁的开发方式(这简直就是Python编程的标志)的同时,让程序具有C或C++所带来的高效性。
1.2.5 Python无所不在
从掌上电脑到超级计算机,Python可说是无所不在。如果客厅里没有超级计算机的话,也可以在Windows、Macintosh或是Linux电脑上运行Python。而这些也正是首选的运行平台。
Python程序是平台无关的。也就是说,无论程序是在哪种操作系统编写的,它都能在其他任何装有Python的计算机上运行。因此,当用户在自己的电脑上编写了一个程序之后,可以通过电子邮件将其发给使用Linux的朋友们或是使用Mac的大妈,该程序在他们的电脑上一样是可以运行的(只要他们的电脑上装了Python就行)。
1.2.6 Python有一个强大的社区
大部分编程语言都有一个专门的新闻组,而Python则还有一个叫作Python Tutor的邮件列表,新手们可以随意在这里提问。该邮件列表的网址是http://mail.python.org/mailman/listinfo/tutor 。虽然这个邮件列表叫作Tutor,但不管是新手还是老手都可以上去问问题。
还有一些关注某些特定方面的Python社区,它们的共同点就是:尽量地友好和开放。正是因为Python本身就适合于新手,所以这一点也是说得通的。
1.2.7 Python是免费的、开源的
Python是免费的,一分钱都不用花就可以将其安装到电脑上。实际上,Python的许可协议允许做的事情还不止如此。用户可以复制或修改Python,甚至还可以进行转售(但是可别辞了现在的工作哦)。不断坚持开源的理念正是使Python变得如此流行和成功的根源之一。