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编写的程序通常比等效的C,C ++或Java程序短很多,原因如下:
- 高级数据类型允许您在单个语句中表达复杂操作;
- 语句分组是通过缩进而不是开始和结束括号来完成的;
- 没有变量或参数声明是必要的。
Python是可扩展的:如果你会C语言,可以很容易地向解释器添加一个新的内建函数或模块,以最快速度执行关键操作,或者链接Python程序到只能以二进制形式可用的库(例如供应商特定的图形库)。一旦真正挂钩,您可以将Python解释器链接到用C编写的应用程序中,并将其用作该应用程序的扩展或命令语言。
顺便说一句,这个语言是以BBC的名字命名的“蒙蒂Python的飞马戏”,与爬行动物无关。我们不仅允许,甚至鼓励您在代码中引用Monty Python短剧!
现在,你都对Python感到兴奋,你会想要更详细地检查它。由于学习语言的最佳方式是使用它,教程邀请您在阅读时使用Python解释器。
在下一章中,解释了使用解释器的机制。这是相当平凡的信息,但对于尝试后面所示的示例至关重要。
本教程的其余部分通过实例介绍了 Python 语言和体系的各种特性,以简单的表达式、 语句和数据类型开始,然后是 函数和模块,最后讲述高级概念,如异常和用户自定义的类。