Python为什么这么厉害?

1. 语法本身的区别只是为了省事。语法糖,越大的项目中越不重要。比如:

和:

节约了一行代码。但是在不支持此语法糖的语言中,只是简单/麻烦的区别,而不是能/不能的区别。

2. 函数模型/对象模型决定思考方式。支持FP的语言中,程序员就按照FP的方式来写代码。支持OOP的语言中,程序员就按照OOP的方式来写代码。

3. 语言的适用领域只与库有关,与语言本身无关。比如网页爬虫,大家都用Python,是因为Python有很多优秀的网络爬虫库。如果说任意一门语言,有一天有人写了一个比Python的爬虫库更简单、更好用、更强大、更高效的库,会不会改变Python在网页爬虫领域的优势?我觉得完全有可能。只是现在既然已经有一个优秀的网络爬虫库(并且能满足当下的所有需求),大家都不愿意重复造轮子而已。就像C++在GUI领域的优势是因为有MFC、Qt等,Ruby在web领域的优势是因为有Rails。而且从产品角度来说,比如我现在要做一个网站,应该用啥写。优先考虑的不是语言,而是库。也就是说,相比较的是Rails和django哪个更适合我网站上面的这些功能,而不是比较Python和Ruby。

4. 程序员的情怀。有些程序员有语言倾向,这很正常。不然就不会整天在网上争论

  • Python和Ruby哪个更好,
  • PHP是最好的编程语言。

甚至有人要用自己最喜欢的语言来实现这门语言本来没有的功能(参考node.js)。

如果有足够多的时间和足够多的程序员,肯定会让每一门语言在每一个领域都有优秀的库(参考猴子与打字机)。

5. 全文完。

以上纯属个人观点,如有反对,敬请忽略。


菜鸟学Python


Python厉害的原因在于这些年有越来越多的人使用,越来越多人使用是因为很多不会编程的搞科研的人员只需要学习一点python的知识就可以处理比较复杂的问题。由于python本身作为胶水语言在处理科学计算的时候比java等方便,又是开源的,因此有很多关于科学计算和机器学习的包。比如文本处理中Stanford提供的nltk工具可以非常方便的处理文本和语言、gensim的机器学习工具等有大量的现有的模型的实现,包括主题模型、层次主题模型、非参数聚类等。同时由于tensorflow等框架的流行也导致了很多人开始学习python。

但是实际作为业务支撑的话应该是C与Java为主。python适合做科学计算,编写机器学习模型和数据挖掘算法的好工具。


分享到:


相關文章: