Python是一门简单易学且功能强大的编程语言。它拥有高效的高级数据结构,并且能够用简单而又高效的方式进行面向对象编程。Python优雅的语法和动态类型,再结合它的解释性,使其在大多数平台的许多领域成为编写脚本或开发应用程序的理想语言。
要认识Python,首先得明确一点:Python是一门编程语言。这就意味着,至少原则上来说它能够完成MATLAB能够做的所有事情(大不了从头开始编写),而且大多数情况下,相同功能的Python代码会比MATLAB代码更加简洁易懂;而另一方面,因为它是一门编程语言,所以它能够完成很多MATLAB不能做的事情,如开发网页、开发游戏、编写爬虫来采集数据等。
Python以开发效率著称,致力于以最短的代码完成同一个任务。Python通常为人诟病的是它的运行效率,而Python还被称为“胶水语言”,它允许我们把耗时的核心部分用C/C++等更高效率的语言编写,然后由它来“黏合”,这在很大程度上已经解决了Python的运行效率问题。事实上,在大多数数据任务上,Python的运行效率已经可以媲美C/C++语言了。
本书则致力于讲述用Python进行数据挖掘这一部分功能,而这部分功能,仅仅是Python强大功能中的冰山一角。随着NumPy、SciPy、Matplotlib、pandas等众多程序库的开发,Python在科学领域占据了越来越重要的地位,包括科学计算、数学建模、数据挖掘,甚至可以预见,未来Python将会成为科学领域编程语言的主流。图2-1和图2-2是一些编程语言的使用排行榜,它们可以证明Python越来越受欢迎。
图2-1 2015年6月TIOBE编程语言排行榜(每月更新一次)
图2-2 近年来天文学论文中所涉及的编程语言的趋势(根据ADS中的论文致谢所提及的编程语言次数而制作)