为何选择Python

为何选择Python

由于学会Python你就能飞了。。。python

推荐下小编的Python学习群;629440234,无论你是小白仍是大牛,小编我都欢迎,不按期分享干货,包括小编本身整理的一份2018最新的Python和0基础入门教程,欢迎初学和进阶中的小伙伴。程序员

天天晚上20:00都会开直播给你们分享Python知识和路线方法,群里会不按期更新最新的教程和学习方法(进群送2018Python学习教程),你们都是学习Python的,或是转行,或是大学生,还有工做中想提高本身能力的Python党,若是你是正在学习Python的小伙伴能够加入学习。最后祝全部程序员都可以走上人生巅峰,让代码将梦想照进现实,很是适合新手学习,有不懂的问题能够随时问我,工做不忙的时候但愿能够给你们解惑编程

标题

1. Python方便灵活flask

以前对于矢量或栅格数据的处理,很是严重的依赖于ArcGIS和ENVI,尤为是数据读取,如ArcGIS 的.shp,ENVI的.img,以及LiDAR的.las等这类独有的格式,离开了这些专业软件基本就不知道该怎么对付这类数据了。因此在选择语言的时候,矢栅数据读取以及数据基本分析(空间分析,遥感影像的)是否灵活方便很重要,这也是为何在学校时都是学的基于ArcGIS Engine和IDL二次开发(好像GIS专业的特长就是二次开发似的,总感受这就像是软件开发世界的二等公民)。Python在必定程度上可以解决这个问题,再也不依赖于特定的软件平台,毕竟那些对工具依赖性强的工做,你的价值越依附于工具,你越是要警戒本身的思考能力被工具剥夺。机器学习

 

2. Python库丰富编程语言

能够说我在了解Python各类库上面花费了不少时间,有时间应该整理一个表格分类列出来有用的工具包。至少,在矢量数据方面,有GDAL,Geopandas,leafet,rasterio;fiona而栅格数据方面,通用的图像处理有opencv,scikit-image,用于遥感图像的有spectral-python。更重要的是,若是想涉足机器学习,python更有从较通用的sklearn到深度学习的Tensorflow、keras等一大票工具包等着你。工具

 

3. Python资源多学习

在此是指有问题基本都能在stackoverflow等找到答案,也有不少相关的书籍。大数据

 

4. 代码共享方便网站

这里特指Juypter Notebook的.ipynb文件。文字说明,代码,图在一个文件里面,也能够在gist和nbviewer直接在线共享浏览,微软和anaconda也提供了在线运行环境,申请个帐号就能直接运行代码。

 

4. Python”上手快”

之因此列在最后,我对这点是有些质疑的。由于没有必定的编程功底和对编程语言的理解,很难说的上上手快。装个flask包,敲几行代码运行起来一个网站,不能称之为上手了。我一开始对着些教程敲代码,的确感受python能在相对短的时间内,用较少的代码完成一些复杂的工做,但都是在利用已有的工具包的状况下,当实际须要处理数据时,仍是要很是频繁的去google或翻以前的资料,不少状况都是没有可以深刻的去理解。

Python能作什么

对GIS和遥感数据来讲,Python能作的事情,那简直是不要太多。

 

1. 数据读取和处理

2. 脚本

ArcGIS,ENVI等商业软件均可以用Python作脚本语言,QGIS,SNAP和EnMAP等开源工具也用到了它。

 

3. 机器学习

更时髦的词,能够用地理空间智能,时空大数据等等。

 

4. Web开发

GeoDjango

 

5. 桌面开发

Python结合tkinter和pyqt,也能胜任,但没啥优点可言。不过,貌似除了三维、VR/AR,普通的桌面开发也已经颓废,被Web和移动端占据了。

总结

一句话总结: Python的生态系统庞大,应用场景丰富。