作为脚本语言的Python(Python Preview)

来源:互联网 发布:淘宝上的gsx查询可信吗 编辑:程序博客网 时间:2024/05/22 05:12

测试工作需要使用脚本语言编写自动化程序,而脚本语言的选择对于初学者而言往往是一个相当困惑的问题。实际上脚本语言之争是一个相当源远流长的问题,比如豆瓣Python编程小组中的帖子:豆瓣在python和ruby之间为何选择前者?从05年讨论至今可谓历史悠久。

当然豆瓣选择python并不是为了拿python作为脚本语言来使用,实际上豆瓣的开发有6成的代码是python编写,这似乎给选择python的人更多的信心,至少python的应用并不像一般认为的那样局限,对于python的优势,可以在专门的书籍中找到答案,比如Learning Python。好吧,我得承认,当我打开这本书的时候,其实我已经选择了python,这本书中所举的优势只是增加了我对于选择的自信罢了。实际上对于一名测试人员,与其花费很多时间来详细地比较语言的优势和劣势,不如在差不多的时候下决心去学习,因为毕竟任何一种“活着”的语言都有其生命力,颇有文无第一的味道。而我选择python,理由其实很傻,一是招聘启事上python出现的频率很高;二是豆瓣;三……今年是蛇年,这个算吗?

还是看看Learning Python的说法吧:

1、Software quality:readable, and hence reusable and maintainable. 可读性强,因此重用性和可维护性都很好。这很好理解,因为python依赖whitespace区分代码级别,漂亮而美观。除此之外,python是面向对象的脚本语言。

2、Develop productivity:python代码一般只有C++或Java的1/3到1/5;且python作为解释型语言,节省了compile和link的时间。

3、Program portability:绝大多数python程序都是跨平台的,因此经常作为shell tools和control language出现。

4、Support libraries:python的standard library中包括很多prebuilt&portable的函数。除此之外,python可扩展性强,包括homegrown library和很多第三方的application support software,比如NumPy被认为可以替换Matlab numeric programming system。

5、Component integration:python经常被作为product customization and extension tools。

6、Enjoyment:因为1和2^_^ 

一般而言,python的最大弱点是速度,但实际上这并不真正是一个问题。一些耗费时间的任务,比如文件或者GUI相关,实际上是run at C speed。因为这些tasks直接dispatched to compiled C code inside the Python interpreter。

总之,Python是一个受欢迎的open source system,具有面向对象的优势(polymorphism、operator overloading、multiple inheritance),简单易学,值得选择。

Python的官方网站:http://www.python.org

The Writer:Guido van Rossum

推荐的书籍:Learning Python;Programming Python;Python Pocket Reference

推荐的学习网站:http://www.codecademy.com/zh/tracks/python

原创粉丝点击