^ 关注我,带你一起学GIS ^
ArcPy是什么?下面这是来自ESRI中文官网的原话。
❝
ArcPy 是 Python 站点包,用于以有用且实用的方式使用 Python 执行地理数据分析、数据转换、数据管理以及制图自动化。
ArcPy 主要用于核心 GIS 应用程序。 它是一个 Python 软件包,提供了一种方法来执行与地理数据分析、数据转换、数据管理和地图自动化相关的各种任务,并可使用 Python 访问大约 2,000 个地理处理工具。它需要 ArcGIS 产品才能使用,如 ArcGIS Pro、ArcGIS Server 或 ArcGIS Notebooks。可通过 ArcPy 自动执行重复性任务,创建自定义地理处理工作流并扩展 ArcGIS Pro 的功能。 包括访问行业领先的空间分析和空间机器学习算法。它用于处理本地计算机上的数据、执行分析以及使用 ArcGIS Pro 自动执行任务。
我的理解为ArcPy是ESRI公司开发的基于Python的GIS数据处理、转换、分析的脚本。
AcyPy源于ArcGIS 9.2中所采用的arcgisscripting模块,并且集成在ArcGIS 10中。此后,AcyPy一直集成在ArcGIS 10.x中,并跟随ArcGIS一起发布,笔者最早接触的版本为最经典的版本ArcGIS 10.2,这个版本估计现在仍然有许多的使用者。直到后来ArcGIS Pro问世,AcyPy便集成在ArcGIS Pro中。
ArcPy 提供了一种用于开发Python脚本的功能丰富的动态环境,同时提供每个函数、模块和类的代码实现和集成文档。
下面将以ArcGIS Pro中集成的ArcPy进行讲解。在ArcPy中,主要包含以下十大模块。
- Charts (arcpy.charts)
- Data Access (arcpy.da)
- Geocoding (arcpy.geocoding)
- Image Analysis (arcpy.ia)
- Mapping (arcpy.mp)
- Metadata (arcpy.metadata)
- Network Analyst (arcpy.nax and arcpy.na)
- Sharing (arcpy.sharing)
- Spatial Analyst (arcpy.sa)
- Utility Network (arcpy.un)
这十大模块包含了GIS数据处理、转换、分析的各方面,在学习中,可针对各模块进行专项练习。
既然ArcPy基于Python解释器,那么想要运行ArcPy脚本,就需要安装Python环境,而这已经集成ArcGIS产品中了,在ArcGIS10.x中集成的是Python2,ArcGIS Pro中集成了Python3。
1. 导入ArcPy
ArcPy模块的导入非常简单,可直接通过import arcpy导入。
python
# Import arcpy
import arcpy
# Set the workspace environment and run Clip
arcpy.env.workspace = 'E://data//arcpy'
arcpy.analysis.Clip("polygon.shp", "clip_feat.shp", "E://data//arcpy//standby_clip")
2. 运行ArcPy
在Python窗口中写入以下代码。打开ArcGIS Pro软件,选择菜单栏视图View,点击Python window。借助Python窗口交互式控制台,可以通过Python解释程序直接在ArcGIS Pro中运行Python代码,而无需脚本文件。 可在该窗口中运行的Python代码包括单行代码,也包括复杂的多行代码块。
在窗口中输入以下代码,按回车运行。
ini
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "E://data//arcpy"
# Set local variables
in_features = "polygon.shp"
clip_features = "clip_feat.shp"
out_feature_class = "E://data//arcpy//standby_clip"
# Run Clip
# arcpy.analysis.Clip("polygon.shp", "clip_feat.shp", "E://data//arcpy//standby_clip", 1.25)
arcpy.analysis.Clip(in_features, clip_features, out_feature_class)
也可以使用编辑器写入以上代码,在命令行窗口中运行脚本。
3. 查看帮助
Python提供文档字符串功能。ArcPy中的函数和类在包文档中使用该方法。读取这些消息以及获取帮助的方法之一是运行Python提供的help命令。使用参数运行该命令会显示对象的调用签名和文档字符串。
java
import arcpy
help(arcpy)

4. ArcPy 基本词汇
主要介绍了要理解ArcPy帮助需要掌握的一些词汇,具有模块、类、函数等。
5. ArcGIS API for Python
还有一个需要区分一下ArcPy和ArcGIS API for Python
ArcGIS API for Python 是为WebGIS而设计的。 它是一个为执行GIS可视化和分析、空间数据管理和GIS系统管理任务提供广泛功能的Python库。
既可以交互使用,也可以通过脚本使用,使其成为GIS专业人员的通用工具。ArcGIS API for Python随附于ArcGIS Pro,但也可以与ArcGIS Online或ArcGIS Enterprise配合使用。借助ArcGIS API for Python,您可以创建和操作GIS数据、执行空间分析、将地图和图层发布到Web等。 您可以使用托管在ArcGIS Online 或ArcGIS Enterprise上的GIS数据和服务,并使用Python创建Web应用程序。它用于管理和分析WebGIS数据、自动化管理任务以及创建Web地图和应用程序。
参考资料
https://desktop.arcgis.com/zh-cn/arcmap/latest/analyze/python/importing-arcpy.htm#ESRI_SECTION1_5E64CCAB40C24B0DB1ED80EF96176F73https://pro.arcgis.com/zh-cn/pro-app/latest/arcpy/get-started/python-window.htm

❝
GIS之路 -开发示例数据下载,请在公众号后台回复:vector
全国信息化工程师-GIS 应用水平考试资料,请在公众号后台回复:GIS考试
❝GIS之路 公众号已经接入了智能 助手,可以在对话框进行提问,也可以直接搜索历史文章进行查看。
都看到这了,不要忘记点赞、收藏 + 关注 哦 !
本号不定时更新有关 GIS开发 相关内容,欢迎关注 



关于 PyQT5 和 GDAL 导入顺序引发程序崩溃的解决记录