吊你胃口

如果你在计算机上大量工作,你最终会发现有很多你想自动完成的任务。例如,你也许会希望在大量的文本文件中实现查找-替换操作,或者很复杂地重命名或重新组织一些图片文件。也许你想要写一个小的数据库,或者一个专用的GUI应用程序,或者一个简单的游戏。

如果你是一个专业的软件开发者,你也许不得不用若干 C/C++/Java 的库工作,但是发现经常读/写/测试/重编译 的循环太慢了。也许你正在写一套测试的软件用于这样的库,而发现测试代码是一个冗长无聊的任务。又或者你已经写了一个可以使用扩展语言的程序,而你又不想为你的程序重新设计和实现一个新的语言。

Python 正式是适合你的那个语言。

你可以为一些这样的任务写一个 Unix shell 脚本或者 Windows 的批处理文件,但是 shell 脚本最适合用于移动文件和更改文本数据,而不适合 GUI 应用和游戏。你可以写一个 C/C++/Java 程序,但是它将花费大量的开发时间,即使是开发程序的初稿。Python 可以在 Windows, Mac OS, 以及 Unix 操作系统上更加简单的获取,它也将帮你迅速的完成工作。

Python 使用简单,但是它是一个真正的语言。相比于 shell 脚本和批处理文件,它提供了更多的结构和对大型项目更多的支持。另一方面,Python 也比C语言提供了更多的错误检查。它作为一个高级语言,它有高级内建的数据结构,比如可变数组和字典结构。因为他有更多的通用数据结构,Python 比 Awk 甚至 Perl 在解决更大问题有更广泛领域的应用,但是在许多事情上,Python 至少和这些语言一样简单。

Python 允许你把你的项目拆分成不同模块,这些模块可以在其他 Python 项目中复用。Python 有大量的标准模块,你可以把这些模块作为你项目的基础——或者作为开始学习Python项目的实例。有些模块提供了诸如文件读写(I/O)、系统调用、插口、甚至图形用户接口工具包,例如TK。

Python 是一门解释语言,它能够为你在写项目时节约大量的时间,因为不需要编译和链接过程。解释器能够交互使用,这可以让你简单的试验语言的特性,可以让你写随写随用的程序,或者自下而上在你项目开发期间测试函数。它也可以用作计算器。

Python 可以让你写出简洁,可读性高的代码。用Python写的代码比同等量级的 C C++ 或者Java项目要简短,理由如下:

  • 高级数据结构允许你在一个简单的语句中扩展复杂的操作
  • 使用缩进来组织代码块,而不是用花括号的开始和结尾
  • 不需要声明变量和参数

Python 是可扩展的:如果你会C语言,那么对你来说,向解释器中添加新的内置函数或者模块非常简单,你可以以最大的速度执行重要的操作,也可以链接 Python 项目到只能用二进制形式的库(例如特定供应商的图形库)。一旦你真正的上瘾了,你可以把Python解释器链接到C语言写的应用,然后用它来作为扩展或者作为你应用的命令语言。

顺便一提,Python 语言是由“蒙提派森的飞行马戏团 (Monty Python’s Flying Circus)” 命名而来,Python 和爬行动物蟒蛇没什么关系。在文档中引入蒙提派森的剧集不太好,但是我们鼓励这么做!

现在你应该对 Python 很激动了,你将希望看一看更多的细节。因为学习一个语言的最好方法就是使用它,所以在你阅读本教程时,你可以玩转Python解释器。

在接下来的章节中,我们将解释解释器的机制。这个信息比较单调乏味,但是对你之后实现后面的代码非常重要。

本教程剩下的部分通过实例,介绍了Python 语言和系统的众多特性。我们从简单的表达式、语句和数据结构开始,然后学习函数和模块,最后接触进阶的概念,比如用户自定义类。