容易学习的Python语言
还记得几年前一个美国教授谈到编程时说,编程是对人的智力的浪费。我当时深有同感,编程中确实有大量费力同时又相当琐碎的事。当然现在看来教授的话有些偏激,毕竟在“编程机器”发明前,还需要千万个程序员的辛勤工作。
计算机业经过了pc革命,又迎来了网络革命,下一个大的革命也许就是智能革命。但在智能时代到来之前,还是有很多有意义的改进工作可做,近年发展的一些半自动开发工具一定程度上降低了劳动强度,对程序语言的改进一直也在进行。
对于编程来说,程序语言不是关键性的因素,但对工作效率却有不可低估的影响。经过测试证明一些script语言(如python,perl等)和传统的语言(如c,c++)相比,开发速度有5倍以上的差距。
在这里我向大家推荐Python语言,我主要谈它的两个特点:
—— 容易学习
我讲我自己的一点亲身感受。当我了解了script语言的好处后,我就决定学习一门script语言,学什么好呢?自然的我选择了名气最大的perl,我买了一本《perl 24小时教程》,但我折腾了差不多半个月也不敢说掌握了。在有些泄气的同时我想到了曾在网上看到的Python语言,一天无聊,我凭猜测键入了Python.Org,果然这里是Python的主网站。读了它的简介后我很快就被吸引住了,我立刻下载了软件,经过三个小时的试验,运行一些小程序,我感觉已经基本上领会了Python, 容易学习,的确名不虚传。下面是同一个函数两种语言版本的对比(声明:我无意贬低Perl的价值,它的流行已经证明了自己):
#————— Python version.——————
def pairwiseSum(list1, list2):
result = []
for i in range(len(list1)):
result.append(list1[i] + list2[i])
return result
#————— Perl version. ———————
sub pairwiseSum {
my($arg1, $arg2) = @_;
@list1 = @$arg1; @list2 = @$arg2;
for($i=0; $i < length(@list1); $i++) {
push(@result, $list1[$i] + $list2[$i]);
}
return(\@result);
}
Python提供了一个交互式环境,我想这是它容易学习的主要原因之一,就像以前的Basic和一些数据库语言环境(如dbase,sql等)一样,正如一个资深程序员所说,软件的复杂是因为千万件事堆在一起,交互式环境恰好可以让我们把程序分解开,我们可以试验每一个不清楚的语言成分,同时这也是一个很好的测试平台。
——Python的另一个重要特征是容易阅读
这是设计者的设计目标之一,这得益于它的语法简洁,用缩进格式代替了括号,程序短小精悍(比其它一些语言短一半到三分之二),同时语言直截了当,接近自然语言,符号的使用符合常识和直觉,比较少专门定义的特殊符号,这也是Python容易学习的原因之一。
程序的容易阅读是很重要的,程序越大就越发重要,除非你想把自己搞晕。如果说对个人来说还不是如此关键的话,对于一个团体和社区来说就可以说是太重要了,无论是开发,维护还是软件质量都将受益匪浅,而且可促进交流提高,在这个网络时代其价值就越发显示出来。
我们是在写程序,毕竟不是在搞加密。
参考网站:
http://www.python.org
http://python123.yeah.net
作者:陈革
2000.10.3