胶水特性。Python 本身被设计为可扩充的,并非所有的特性和功能都集成到语言核心。Python 提供了丰富的 API 和工具,以便程序员能够轻松地使用 C、C++、Cython 来编写扩充模块。例如在 Google 对于 Google Engine 使用 C++ 编写性能要求极高的部分,然后用 Python 或 Java/Go 调用相应的模块。
随着 Python 自身功能的完善以及生态系统的扩展,Python 在 Web 开发、网络爬虫、数据分析与数据挖掘、人工智能等应用方面逐渐崭露头角。
Django 和 Flask 引领的 WEB 开发模式
2004 年,目前最流行的 WEB 框架 Django 诞生。2010 年,另一个流行的轻量级 WEB 框架 Flask 诞生。Django 是一个 WEB 解决方案 “全家桶”,其功能大而全,包含了几乎所有 WEB 开发相关的组件和功能,它可以大大节省开发者在基础组件、选型、适配等方面的时间和精力;而 Flask 只包含基本的配置,默认依赖于两个外部库也可以自由替换,给开发者提供最大的自主空间。这两类完全相反方向上的 WEB 开发模式,几乎可以为所有开发者提供了很好的选型参照物:无论开发者想要一站式还是最大化自主解决方案,Python 都能满足。
此后,以豆瓣、春雨医生、知乎、Dropbox、YouTube、CIA(美国中情局)等为代表的企业和机构都基于 Python 做网站开发,预示着 Python 应用到 WEB 开发领域逐渐成为一种新兴趋势。
TensorFlow:谷歌于 2015 年研发的第二代人工智能学习系统。借助谷歌的强大号召力以及在人工智能领域的技术实力,它已经成为目前企业真实生产环境中最流行的开源 AI 框架。更重要的是,它也是第一个(应该也是唯一一个)经过真实大规模生产环境(Google)检验过的框架。
在互联网领域,Facebook 和 Google 都是全球 IT 企业的标杆,具备行业领导力和风向指示意义。他们基于 Python 开发的 AI 库(PyTorch 和 TensorFlow)已经成为目前最流行的 AI 库,而且 “到底选择 PyTorch 还是 Tensorflow” 仍然是一个具有争议性的话题。