我第一回体验Python是用这种脚本编程语言定制Mailman,这是一种邮件列表管理软件包。最初我对Python那些严格的语法规则和空格排版可真是厌烦透了。但日子一长,编写的代码一多,原来Python脚本的语法其实够简单的,特别容易懂。Python真是一种功能强大的工具,每一位开放源代码程序员都应该熟悉和掌握它。
Python是什么?
Python是一种开放源代码的脚本编程语言,这种脚本语言特别强调开发速度和代码的清晰程度。它可以用来开发各种程序,从简单的脚本任务到复杂的、面向对象的应用程序都有大显身手的地方。Python还被当作一种入门程序员最适合掌握的优秀语言,因为它免费、面向对象、扩展性强同时执行严格的编码标准。
Python是免费的
Guido van Rossum于1990年开始开发Python,最初的目的无非是一个自娱的项目。作为Monty Python的飞行马戏团节目的爱好者,他给自己开发的这种编程语言起了现在这个古怪的名字,中文意思就是大蟒。Python最初设计为一种取代 Amoeba分布式操作系统ABC的脚本语言,但不久这种新型编程语言很快就发展成可以解决相当多问题的利器,现在更引入到了多种平台。
Guido目前还是Python软件基金会的主席。该组织按照GNU公共许可协议的要求拥有Python的知识产权和许可权。Python可以用在多种平台上,包括Windows、Macintosh和各种常见的UNIX系统。另外针对PalmOS 和微软的Pocket PC的相应版本也在开发中。
Python品质超群
虽然Python常用来创建简单的脚本,但它采用的编程技术可不简单,比如面向对象编码、套接字、线程和GUI等等。假如你是一位刚入流的程序员,这些特性显然对你太有帮助了,因为你可以很快熟悉有益的编程语法和编码实践,之后再学习其他语言,比如Java或者C++等引入的技术概念就容易多了。脚本可以单独执行,不过,你还可以通过类文件和各类对象类型以充分利用这种语言的强大功能。
Python区别于其他面向对象语言的关键有两点。首先,Python强调空格和编码结构,从而令开发者的代码具有良好的重用性。其次,执行脚本之前无须编译Python代码,这就是它为什么被当作脚本语言的原因。
Python易于扩展
Python语言有一个引人注目的优势,它可以针对语言无法完成功能的函数调用函数库。Python还具有有些相当有用的工具帮助开发出复杂的应用程序。其中最常用的就是Tkinker,这种工具可以实现跨平台的GUI开发。另一种wxPython工具则是对wxWindows跨平台C++框架的扩展。WxPython目前已经支持Windows和Linux平台。Python Imaging Library可以让Python创建、打开、编辑和修改图象,包括.gif、.jpeg和.png等。为了了解常用的Python扩展和应用,你不妨访问下The Vaults of Parnassus。
Python自身还可以嵌入到其他编程语言中。最常见的就是[url=http://www.jython.org/]Jython[url],这是一种用Java编写的Python解释器。这样你就可以同时利用两种语言的优点。你还可以在强大的Java应用程序框架中结合Python清晰的语法来创建出依赖于两种语言库的应用程序。
编码标准
严格的Python语法是初级程序员忽略这一强大编程语言的最主要原因。和大多数的其他面向Web脚本语言不同的是,Python的空白排版不依赖于括号或者分号来表示语句结束,换行和占位符用来描述代码的可视结果。这种编程方式乍看之下令人感到厌烦,但却对你另有莫大的好处,这就是代码的可靠性。Python这种结构化是建立在下面的理论之上:开发者的工作时间机构财产中最有价值的财富。一旦你习惯了编写Python代码的规则。实际上你就习惯了一种内建的编码标准。这也正是大多数Python开发者所依赖的标准。
获取Python
你可以从http://www.python.org或者各类平台上的Python版本。ActiveState网站也发布用于 Windows、Linux和Solaris等平台的Python库。
最简单的Python代码
下面我们举例说明Python。假设你目前使用的是Windows系统,而且已经安装了Python,请首先启动IDLE,也就是Python的 GUI。现在处于Python Shell中(如果你在UNIX类型的系统上就需要键入 python类型指示你的Python可执行文件)。接着在“>>>”提示符下键入:>>>print “Hello World”
这个大家耳熟能详的程序就在屏幕上显示出结果,你还可以如下所示给变量赋值:
>>>myvar = 42
>>>print myvar
在上例中会显示结果42。
如果你开发的脚本无须在Python Shell 中直接输入Python就更有用了。程序清单A就包含了一个Hello World脚本的示例,其中编写了if-else语句。
你可以在命令行上键入scriptname.py来执行自己的脚本(py是Python 脚本的标准文件扩展名)。你应该能看到正确的显示结果。清单A中,跟着if和else之后由占位符缩排的语句就是空白格式化的一部分。
这些很简单的示例演示了Python清晰的语法。为了了解更多有关Python编程的信息,你不妨查看下Python网站上的初学者指南。如果你不习惯于上网浏览,那么你还可以阅读O’Reilly 和New Riders 出版的有关图书。比如How to Think Like a Computer Scientist : Learning with Python和Python Essential Reference。
小结
不论你是一位初学编程语言以图增长自己知识技能的入门程序员还是为了谋取更大代码可靠性的Perl高手,你都会发现Python是一种相当灵活和强大的编程语言。它可以开发出各种各样的应用程序,从功能齐备的邮件列表软件到各种跨平台的GUI应用程序一应俱全。