Python怎么就这么流行,其原因?

根据我几年的观察,我感觉Python是被学术圈子出来的人带火的。

Python虽然这么红火,但鄙视的Python的人也很多,但一般绕来绕去也鄙视的点也不是很solid:“用python都是些业余编程的”,“真正的程序员不用python”,“python的built-in还不是C”,等等。

差不多6,7年前在Scipy和Scikit-Learn体系还不是很完整的时候,那个时候要做量化分析,统计计量,人工智能等选择都不是很多,MATLAB就是最好的选择。

而很多在大学里面用惯了MATLAB的人毕业之后,出来到公司,难道公司不买MATLAB,饭碗而从此就没了?

那只能硬着头皮到处找能完成相似工作的语言,有现成的Octave,但其并没成为首选,Octave太过用力地模仿MATLAB,但又有很多细节不同。MATLABer学Octave感觉就跟本来会正宗牛津英式英语的人现在要被迫学印度口音的英语。以至于把Octave学好了,MATLAB写起来会不停地犯错。

R也没成为这批人的首选,因为这群人的技能不仅仅是做统计和计量,还有数值建模,人工智能这些事情需要做呢。

ecosystem还不算很好,但总比没有好,也得硬着头皮上。经过好几年这群人也把自己领域的很多技能带入到了Python的各个library里面。这个系统越来越完善,从最开始模仿MATLAB(matplotlib的创始人就说过“我们抄了很多MATLAB内容”),到现在自立门派。

还有一点,六七年前人工智能主要还是在大学等研究机构里面做,一般的公司还没怎么用得上。但现在各种大小公司也开始了做人工智能了,这又狂推了一把Python。本来Scipy已经在逐渐成型,人工智能浪潮一来,更多的人才进入Python圈子。MATLAB除了simulink之外,

然后这批人又把Python带回学术圈,现在学术圈的人用了之后都说好,很多教授都开始主动学习Python,并且狂推Jupyter,新一代的学生也都开始Python,而不是MATLAB了。

连Python community都没预料到,竟然community两三年时间就翻了N倍,成为最活跃的语言。

确实,像我们这种业余编程的,目的也不是web development,对python的理解也很浅薄,主要就做做数值建模和计量分析。

但谁让他免费又好用呢?

 说到当今「最最最流行」的编程语言,Python可谓是当之无愧,就看看网上各种机构卖课的疯狂程度,每个人心里可能都会有些数。

与此同时,就在两天前,Python迎来了它的30周岁生日!

对于明星编程语言Python来说,过生日当然需要「排场」和讲究:

这不,Python软件基金会下属Python指导委员会中的成员——Pablo Galindo(同时也是彭博社的软件工程师),在Python的生日前夕,开启了专属的「生日大礼包」:

对于Python来说,最重要的可能就是在当今众星捧月之下未来的发展方向了——在不牺牲向后兼容性的情况下,在未来,它的「星途」会面临什么样的挑战?

对此,Pablo Galindo以接受采访的形式,发表了他的看法:

(下面内容由真实采访简化而来)

问:你是如何开始接触Python的?

Pablo Galindo:那是我在格拉纳达读博士的第一年。我是学物理的,曾经模拟过黑洞,当时我通常用C和c++编译模拟的代码。

而之后,我发现了Python——它是一种用来封装模拟代码的奇妙语言,我很快就爱上了它的语法和它的力量。

问:Python的流行是否让你感到惊讶?

Galindo: 确实。而且它现在仍然是世界上使用最多的语言之一,这真是不可思议。

问: Python在你们内部最常见的用例是什么?

有2000名开发人员在使用Python,用例也非常广泛——我们使用Python来构建机器学习模型或面向服务的体系结构。

我们还在很多内部用户的体验工具和开发人员的工具中使用了Python。

此外,我们还使用Python来进行数据转换。

问:你现在对Python的评价是什么?

Galindo: Python是一种非常成熟的语言,而且它已经进化过了。

它自身也一直携带着很多东西——Python有一些现在可能看起来比较「老」的包,但其对应的社区和生态系统依然需要得到保留,这与C和c++现在的发展方式是类似的。

当你对某种语言进行改变时,是相当危险的,因为你可能破坏一些东西——这也是人们最害怕的。

不过,尽管Python已经相当古老,仍然有很大的变化:

今年10月发布的Python 3.1将会包括模式匹配——这是很长一段时间以来,Python最大的语法变化之一

此外,我们还可以从其他语言中汲取优势。我可以很高兴地说,Python仍然在进化和适应。在尊重向后兼容性的重要性方面,我们有很丰富的经验

问:如果你可以成为一天的「Python之王」,你会改变其中的什么?

Galindo: 哈哈,那肯定会很糟糕,我会做一天糟糕的国王。

首先需要做的就是做一些修补工作,而这需要打破很多东西——显然,我不会这么做。

我认为,在未来,我真正希望看到的是Python变得比现在更快:我认为Python仍然有很大的潜力。

问:你希望在你第一次使用Python的时候,知道哪些你现在才发现的内容?

Galindo: 我认为接触Python以来,我学到的最重要的一点,是Python有很多不同的用途。

在考虑语言的发展时,听取所有用户的意见是很重要的。

Python在演变和进化的时候与用户的的冲突和交互是很具有启迪意义的——我刚开始的时候根本没考虑过这个问题。如果我们在改进Python的时候其他用户能体谅到这一点就好了。

问:对那些已经使用了Python的组织领导者来说,你最好的建议是什么?

Galindo: 对于他们来说,如何向决策层强调Python的独特性是非常重要的,他们需要特别了解生态系统和语言将对组织产生什么样的改变。

我要回帖

更多关于 python现在还主流么 的文章

 

随机推荐