Perl VS Python

学习感悟:编程专题

这段时间,趁老师休假,实验室也没有多少人,我学习了一些python编程相关知识。加上自己本身经常用Perl语言编写一些较复杂的程序,心有感触。遂写下这次与编程相关的感悟。

背景
我在大二的暑假刚接触生物信息学时,还只是简单地会用各种生物信息分析的网站。后来慢慢接触到Linux,R,才开始正式学习编程。那个时候自己觉得会Linux会R,分析生物信息学没问题了。随着后面学业的继续,我意识到除非精通Linux和R,否则想做生物信息学数据挖掘是完全不够的。于是,开始接触脚本语言(当时自己纠结于Perl和Python,两个都稍微看过),Perl语言成为了我之后使用的最主要的脚本语言。

Perl vs Python

这里,我并不想从程序的角度比较二者的差异性。只是主观地以编程者在编程时的感受来描述我对这两个语言的评价。其实,我个人还是更喜欢Perl。因为Perl语言被开发之初冠以的理念就是There is more than one way to do it.这就决定了,解决一个问题,Perl语言有多种多样的方法,在代码的语句书写上,Perl显得更灵活,更多样。Perl的这种特性,比较符合我的思维方式。因此,我在编写程序时更喜欢Perl的代码书写方式。尤其是,Perl在数据类型上分类更简单:标量$、数组@、哈希%,这三种类型还可以更便捷灵活地相互转换。在阅读Perl的代码时,能清晰地通过识别三种类型的标识快速地理解。但是,由于Perl实在是太灵活了,这导致了Perl在整体的代码可读性上非常差。经常有人觉得,用Perl的程序猿相互看不懂对方的代码。相比之下,Python更严谨。There is only one way to do it.是Python开发者的理念。这使得Python在代码的传播性上更具有优势。大家都相对容易地理解Python的代码。目前每月编程语言排行榜上,Python几乎都处于前三的位置。这更说明了Python目前使用相当广泛。

多学一门编程语言是否容易

如果读者曾经接触过一些培训课,应该可能听说过,如果掌握了一个编程语言再去学第二个编程语言会很容易。事实上,从我这几天的学习上,我即同意这个观点,又不同意这个观点。首先,我只花了两天的时间学Python,就成功用Python重构了我之前用Perl语言编写的一个较复杂的程序,而且程序可以很稳定地运行,没有报错。输出结果也与之前的Perl版程序一致。这至少说明,在我本人已经有一定的Perl语言编程水平的基础换,换Python编程没有那么困难。而不同意又因为,如果让我针对一个新的较复杂的问题选择一个编程语言开发解决程序,我还是会选Perl,因为我更熟悉Perl,Perl的语法、结构我更熟悉。尽管我现在也熟悉Python的语法和结构,但是我目前还不能做到一气呵成完成Python编程。

我的学习方法

对于Python的学习,我既没有花钱去买相关的视频课,也没有看书系统地学习。我只在第一天上午简单用百度搜了一下Python相关的数据类型如数字、字符串(这两个对应Perl的标量),列表、元组(对应Perl的数组),字典(对应Perl的哈希)。稍微看了一下如何定义这些类型,如何引用这些类型。然后结合Perl的底子,在第一天下午尝试在各种数据结构中定义、引用、改变这些数据结构。在第二天的上午稍微回顾一下,下午直接尝试重构曾经用Perl写的程序。

学习编程的建议
如果你想当程序猿,我个人建议必须要将一门编程语言用到你所能的极致。如果你想当攻城狮,多学几门语言还是有必要的。毕竟攻城狮的主要目的是解决问题,哪个问题用哪个语言更便捷,就用哪个语言。当然,在生物信息学领域,大多数人应该都是攻城狮吧。另外,研究生博士属于课题导向型,更应该关注如何去解决课题问题。而不是怎么把一个语言学好。

Perl VS Python》来自互联网,仅为收藏学习,如侵权请联系删除。本文URL:http://www.hashtobe.com/2551.html