1.5 Python的历史和版本
面向ArcGIS的Python脚本编程
Python是由Guido van Rossum开发的,那时候他还在荷兰的国家数学和计算机科学研究院(CWI)。1991年,Van Rossum发布了第一版Python。目前,虽然已经有很多志愿者参与到Python的维护与发展之中,但是Van Rossum在该领域仍然十分活跃。不同于其他编程语言,Python只经历了为数不多的版本更新。
Python中既有字符串、列表和字典等元素,也有其他更高级的元素,例如元类、生成器和列表推导式。Python的稳定性和健壮性,反映了所有程序员对Python的需求,即Python中既需要有一些基本的元素,更需要有其他高级语言中常见的高级元素。
本书推荐用户在ArcGIS 10.1中使用Python 2.7版。虽然ArcGIS 10.1中自带了Python 2.7.2版,但是也可以免费下载和安装其他版本的Python。目前Python 2.x版依旧表现十分出色,而且也得到了广泛的使用,但是在未来新的版本中,还需要解决一些多年积累下来的问题,以使语言更加简洁。Python2.7版和Python3.x版虽然有许多差异,但是两个版本中语言的基本结构没有改变。尽管已经有了3.x版,但是目前ArcGIS10.1仍使用2.7版。如果某一天ArcGIS将3.x版作为其首选版本,那么2.7版的脚本文件可以通过各种工具转换成3.x版的脚本文件,同样,3.x版的脚本文件也可以转换成2.7版的脚本文件。
需要注意的是,尽管ArcGIS和Python被打包在一个安装包中,但是Python并不是由Esri开发的。Esri之所以将Python作为首选的脚本语言部署在ArcGIS中,主要是由于它免费和开源的特性,而且为了更方便地使用Python,Esri还在ArcGIS中开发了相关的功能模块。然而,与其他Python应用相比,目前Python在ArcGIS中并没有得到广泛应用。因此,本书的另一个优点就是:在学习了本书的知识后,您不仅可以在ArcGIS中,也可以在其他项目中使用Python。