1. 引言
如果你要用计算机做很多工作,最终你发现是有一些您希望自动执行的任务。例如,你可能希望对大量的文本的文件执行搜索和替换,或以复杂的方式重命名并重新排列一堆照片文件。也许你想写一个小的自定义数据库,或一个专门的 GUI 应用程序或一个简单的游戏。
如果你是一个专业的软件开发人员,您可能必须使用几个 C / C + + /Java 库,但发现通常的编写/编译/测试/重新编译周期太慢。也许你要写这样的库中的测试套件,然后发现编写测试代码是很乏味的工作。或也许您编写了一个程序,它可以使用一种扩展语言,但你不想为您的应用程序来设计与实现一个完整的新语言。
Python 正是这样为你准备的语言。
你可以为其中一些任务写一个 Unix shell 脚本或 Windows 批处理文件,但是 shell 脚本最适合处理文件移动和文本编辑,而不适用于 GUI 应用程序和游戏。你可以写一个 C / C + +/Java 程序,但是甚至程序的第一个初稿都可能花费大量的开发时间。Python 更简单易用, 可用于 Windows、 Mac OS X 和 Unix 操作系统,并将帮助您更快地完成工作。
Python 使用很简单,但它是一个真正的编程语言,比 shell 脚本或批处理文件对于大型的程序提供更多的结构和支持。另一方面,Python 还提供了比 C 更多的错误检查,并且,作为一种高级语言,它有内置的高级数据类型,比如灵活的数组和字典。因为其更加一般的数据类型, Python 比 Awk 甚至 Perl 适用于很多更大的问题领域,而且很多事情在 Python 中至少和那些语言一样容易。
Python 允许您将您的程序拆分成可以在其他 Python 程序中重复使用的模块。它拥有大量的标准模块,你可以将其用作你的程序的基础 — 或者作为学习 Python 编程的示例。这些模块提供诸如文件 I/O、 系统调用、 套接字和甚至用户图形界面接口,例如Tk。
Python 是一门解释性的语言,因为没有编译和链接,它可以节省你程序开发过程中的大量时间。Python 解释器可以交互地使用,这使得试验Python语言的特性、编写用后即扔的程序或在自底向上的程序开发中测试功能非常容易。它也是一个方便的桌面计算器。
Python 使程序编写起来能够紧凑和可读。编写的 Python 程序通常比等价的 C、 C + + 或 Java 程序短很多,原因有几个:
- 高级数据类型允许您在单个语句中来表达复杂的操作;
- 语句分组是通过缩进,而不是开始和结束的括号 ;
- 任何变量或参数的声明不是必要的。
Python 是可扩展的: 如果你知道如何用 C 编程,那么将很容易添加一个新的内置函数或模块到解释器中,要么为了以最快的速度执行关键的操作,要么为了将 Python 程序与只有二进制形式的库(如特定供应商提供的图形库)链接起来。一旦你真的着迷,你可以把 Python 解释器链接到 C 编写的应用程序中,并把它当作那个程序的扩展或命令行语言。
顺便说一句,Python 语言的名字来自于BBC 的 “Monty Python’s Flying Circus” 节目,与爬行动物无关。在文档中引用Monty Python 短剧不仅可以,并且鼓励!
既然现在你们都为 Python 感到兴奋,你们一定会想更加详细地研究它。学习一门语言最好的方法就是使用它,本教程推荐你边读边使用 Python 解释器练习。
在下一章中,我们将解释 Python 解释器的用法。这是很简单的一件事情,但它有助于试验后面的例子
本教程的其余部分通过实例介绍了 Python 语言和体系的各种特性,以简单的表达式、 语句和数据类型开始,然后是 函数和模块,最后讲述高级概念,如异常和用户自定义的类。