Python为什么这么火?

591 阅读3分钟

IEEE Spectrum,TIOBE等各大语言排名都显示,python就是目前最流行的语言。

Python虽然是一门相对比较新的语言,但其实它是一个90后,目前也有30多岁了。从google趋势和baidu指数来看,python也就是近10年才开始慢慢变火。

那python为什么这么火呢?我们从语言特性和其历史发展来分析一下。

1. 语言特性

1999年,吉多·范罗苏姆向DARPA提交了一条名为“Computer Programming for Everybody”的资金申请,并在后来说明了他对Python的目标:

  • 一门简单直观的语言并与主要竞争者一样强大
  • 开源,以便任何人都可以为它做贡献
  • 代码像纯英语那样容易理解
  • 适用于短期开发的日常任务

这就是Python之父理想中的语言特性,从目前来看,这些想法已经基本变为现实。

Python简单,实用的特性,让其变成了万金油。几乎可以满足所有的开发需求,虽然由于性能等问题可能不是最好的实现,但肯定是一个可运行且花费时间最少的实现。

Python还有一个隐藏特性,那就是CPython的存在,使得Python可以借力强大的C/C++ 。哪有什么岁月静好,都是C/C++在负重前行。

比如python效率这么低,为什么能成为目前人工智能的首选语言?要知道人工智能刚开始那几年,caffe等C/C++库才是香饽饽,好像突然之间城头变幻大王旗,python登顶了。

但python流行只是表象,人工智能底层的高性能计算依然是C/C++实现的。如果说人工智能只能选择一种编程语言实现,那一定是C/C++。借用一代宗师的说法,python是面子,C/C++是里子。

\

2. 巨头支持

随着历史的发展,C和C++语言可以说是构成当前信息世界的基石。除了C和C++以外,编程语言千千万,为啥轮到你?因为我上面有人。

比如C#的背后是微软,Java的背后是Sun公司,但是现在换成了Oracle,而Python是Google收养的干儿子。

Google曾经多次推广Python,比如google io 2011年的会上提到了python将在公司内部大量使用,还有推出的GAE也支持python等。包括人工智能大火之后,Google推出了深度学习框架tensorflow,底层是C/C++实现,但是你可以方便的使用python来构建各种模型。

从上面的Google趋势图也可以看出,python的快速发展就是在2010年以后。

看到这里的读者也许会想,那以后巨头们会使用什么语言?目前就有一些微妙了,因为Python是Google领养的,但是Go语言是Google亲生的。在元宇宙的概念扑面而来的时候,Google以后会不会大力推广Go语言呢?

3. 社区支持

巨头支持就像是游戏氪金,充钱自然变强,但是平民用户也不是不能玩。Python早期的发展还是靠健康活跃的社区支持。目前Python的文档,教程,指南等层出不穷,这就是一门语言生命力的表现。

而且各种库都给你设计好了,送到嘴边的馅饼不香么?

总结

总结来说,Python的语言特性使它简单、易学、实用,而且可以轻松借力C/C++,是一门万金油语言。再一个就是巨头和社区的支持,使得Python的生态非常好。你想做的事情,早有人封装好库等你来用了。