如果你在计算机上做大量的工作,你一定非常希望它们能够自动化一些。例如,你想在大量的文件中进行查找替换,或者对大量的照片以一种复杂的方式进行命名和排序。也许你还希望写一个小型自定义的数据库,或者一个专业的 CUI 程序,或者是一个简单的游戏。
如果你是一个专业的软件开发人员,你可能在处理一些 C/C++/Java 库时会发现通常的编写/编译/测试/重编译周期太慢了。也许你会为某个写一个测试用例,然后会发现代码写起来非常乏味。或者你写的程序可以使用扩展语言,可是却不想为你的应用程序设计和实现一门新的语言。
Python 正好适合你。
你也可以写一个 Unix shell 脚本或者 Windows 批处理来处理这些任务,但是 shell 脚本最擅长的是移动文件和修改文件数据,并不适用于编写图形界面的应用程序或者游戏。你可以写一个 C/C++/Java 程序,但是你耗费大量的开发时间得到的仅仅只是一个初步的草案。Python 使用起来非常简单,并且能在 Windows、Mac OSX、以及 Unix 系统上使用,而且会帮助你更快的完成工作。
Python 简单易用,而且它是一门真正的编程语言,在大型程序中比起 shell 脚本或者批处理它能提供更多的结构与支持。另一方面,Python 也提供比 C 更多的错误检查,并且作为一种高级语言,它有高级的内置类型,比如可变队列和字典。由于它拥有更多的普遍的数据类型,所以它比 Awk 甚至 Per 更适合大规模应用,至少在 Python 中处理问题不会比别的编程语言更复杂。
Python 允许你将程序分隔成不同的模块以便在其他的 Python 程序中重用。在 Python 中有大量的标准模块集,这些可以作为你的程序的基石,或者可以作为你开始学习 Python 编程的示例。这些标准模块提供了如文件 I/O、系统调用嵌套字甚至像 Tk 这样的图形工具接口。
Python 是一门解释型语言,因为不需要编译和链接的时间,它可以帮你节省大量的开发时间。解释器可以交互式使用,这样就可以很方便的对语言特性进行实验,以便写一些临时程序或者在程序开发过程中进行自下而上的开发。同时它也是一个方便的桌面计算器。
Python 能够写出紧凑、可读性很强的程序,用 Python 编写的程序相比于用 C、C++或者 Java 所编写的程序来说短得多,有如下几个原因:
- 高级数据结构使你可以在一个单独的语句中表达出很复杂的操作。
- 语句的分组采用缩进方式而不是采用头尾的花括号。
- 不需要变量或者参数声明。
Python 是可扩展的:如果你知道怎么用 C 语言写程序,就可以很容易的为解释器添加的内置模块和功能,或者优化瓶颈使其运行达到最大速度,或者使 Python 程序能够连接到某些只以二进制形式提供的库(例如某个专用的商业图形库)。一旦你成功钩上,你可以讲 Python 解释器连接到 C 语言程序中,并且将其作为扩展语言或者命令语言。