普通视图

发现新文章,点击刷新页面。
今天 — 2026年3月1日首页

ArcGIS Pro 中的 Python 入门

作者 GIS之路
2026年3月1日 11:08

^ 关注我,带你一起学GIS ^

前言

Python 脚本使自动化 ArcGIS Pro 中的工作流成为可能。

本教程来源于ESRI如何在ArcGIS Pro中学习使用Python。在本教程中,您将编写代码来确定工作空间中的所有要素类的要素数量。 这也介绍了Python语法的一些基础知识。 您将在ArcGIS ProPython窗口中编写代码。 可以将代码导出到Python脚本,该脚本可以在ArcGIS Pro外部打开、修改和运行。

文中以ArcGIS Pro3.5为例。

1. 开发环境

本文使用如下开发环境,以供参考。

时间:2026年

系统:Windows 11

ArcGIS Pro:3.5

Python:3.11.11

2. 数据准备

俗话说巧妇难为无米之炊,数据就是软件开发的基石,没有数据,再美好的设想都是空中楼阁。因此,第一步需要下载GIS数据。

别急,GIS之路公众号都给你准备好了

在公众号后台回复关键字:vector,获取数据下载链接。

3. ArcGIS Pro 查看数据集

在本教程中默认你已经学会使用ArcGIS Pro创建工程,并打开数据集。

打开population数据集,然后在图层上右键打开属性,可以在属性表中看到共有32条记录。

4. 使用 Python 工具查看数据集

ArcGIS Pro中运行地理处理工具,使用计数工具箱获取要素集数量。选择Analysis菜单栏,然后点击地理处理工具中的Tools

在出现的地理处理窗格搜索框中输入"count"进行检索,点击如下"Get Count"工具。

Input Rows参数中选择查询数据集population,点击运行。完成之后可以点击查看详情或者打开历史查看工具运行信息,如下图所示,数据集要素数量于属性表中打开的相同,都为32条。

接下来使用ArcPy运行同一工具。点击分析选项卡Analysis,选择地理处理中Python下拉菜单,点击打开Python窗口。

Python运行窗口初始时为空白,具有两个区域,第一个区域为脚本显示区,第二个区域为代码书写区。

之后输入以下代码,按Enter键运行代码获取要素数量,可以看到输出结果与前文保持一致,也为32条记录。

arcpy.management.GetCount("population")

Python 窗口的顶部被称为脚本,底部被称为提示符。 脚本最初为空白的。 脚本提供先前输入的代码记录及其结果。提示符是您输入代码的地方。 当 Python 窗口第一次打开时,提示符中的消息显示为正在初始化 Python 解释程序,这表示该窗口正在准备接收代码。 几秒钟后,消息将被替换为在此处输入 Python 代码,这表示您可以开始输入代码。 首次打开 Python 窗口后,这些消息不会在当前会话中再次显示。

ArcPy 是 Python 包,使得 ArcGIS Pro 大多数功能可通过 Python 使用。GetCount() 是 ArcPy 的函数,可运行数据管理工具工具箱中的获取计数地理处理工具。

在 Python 窗口中运行代码行,将产生与使用工具窗格运行工具时所得结果相同的结果。 Python 窗口中运行的代码,同时也在历史记录窗格中创建一个新条目。

在脚本上右键,点击Clear Transcript可以清除代码。

5. 在Python窗口运行代码

**Python**窗口是练习编写 Python 代码的合适位置。在Python窗口中输入以下代码:

print("GIS is cool!")

继续练习,定义两个变量x,y,输出它们的乘积。

x=3
y=6
result = x * y
print(result) # 18

6. 获取代码帮助

通过将鼠标光标置于输入提示符出,可以显示代码帮助信息。或者显示函数语法和描述信息,并具有代码自动补全功能。

但很遗憾,我在本地完全没有使用过此功能,所以还有待验证。

7. 运行 Python 代码的方法比较

ArcPy脚本代码既可以在ArcGIS ProPython窗口中运行,也可以在Python编辑器中运行。下面是两种运行环境的差异比较。

对于在 ArcGIS Pro 中运行的代码(包括 Python 窗口),使用时不需要导入 arcpy。对于在 ArcGIS Pro 外部运行的代码(例如在 Python 编辑器中),使用时必须先导入 arcpy,然后才能使用 ArcPy 包的功能。

8. 参考资料

  • https://learn.arcgis.com/zh-cn/projects/get-started-with-python-in-arcgis-pro

GIS之路-开发示例数据下载,请在公众号后台回复:vector

全国信息化工程师-GIS 应用水平考试资料,请在公众号后台回复:GIS考试

GIS之路 公众号已经接入了智能 助手,可以在对话框进行提问,也可以直接搜索历史文章进行查看。

都看到这了,不要忘记点赞、收藏 + 关注

本号不定时更新有关 GIS开发 相关内容,欢迎关注 


    

GeoTools 开发合集(全)

OpenLayers 开发合集(全)

GDAL 开发合集(全)

GIS 影像数据源介绍

GeoJSON 数据源介绍

GIS 名词解释

ArcPy,一个基于 Python 的 GIS 开发库简介

GIS 开发库 Turf 介绍

GIS 开发库 GeoTools 介绍

GIS 开发库 GDAL 介绍

地图网站大全

从微信指数看当前GIS框架的趋势

Landsat 卫星数据介绍

OGC:开放地理空间联盟简介

中国地图 GeoJSON 数据集网站介绍

ArcPy 开发环境搭建

作者 GIS之路
2026年2月28日 21:18

^ 关注我,带你一起学GIS ^

通过上一节ArcPy,一个基于 Python 的 GIS 开发库简介[1],我们知道了ArcPy作为ArcGIS桌面软件随附的一部分,要么集成在ArcGIS DesktopArcGIS Pro中,要么存在于ArcGIS Engine或者ArcGIS Server中。

文中以ArcGIS Pro3.5为例进行讲解。

1. 开发环境

本文使用如下开发环境,以供参考。

时间:2026年

系统:Windows 11

ArcGIS Pro:3.5

Python:3.11.11

2. 安装Arcpy

ArcPy包是默认 Python 分布 arcgispro-py3(ArcGIS Pro 和 ArcGIS Server 随附)的一部分。通过克隆 arcgispro-py3 使用 ArcPy 创建环境。 可以使用 ArcGIS Pro 中的软件包管理器,或 Python 命令提示符中的 conda 命令行应用程序来克隆环境。

从 ArcGIS Pro 2.7 开始,当 ArcPy 包版本不冲突时,可将其添加到现有 Python 3 环境中。 要添加 ArcPy,可以使用 conda 从 Anaconda Cloud 上的 Esri 频道安装 ArcPy。 从 Python 命令提示符中,使用适当的版本号运行以下命令:

conda install arcpy=3.6 -c esri

需要注意的是即使ArcPy可以下载安装,但包仍需要ArcGIS Pro,必须安装它才能使用ArcPy

3. 创建环境

3.1. 创建基础环境

随附在ArcGIS Pro、arcgispro-py3中的默认Python环境包含了对用于支持所有ArcGIS Pro Python使用案例的 200 多个软件包的访问权限。在某些情况下,此环境中包含的内容可能远远超出您的需求。 如果你只需要一个简单的环境,即仅包含运行地理处理工具和核心 ArcPy函数所需的最少依赖项的环境,则请使用arcpy-base环境。

arcpy-base明显小于 arcgispro-py3,其中仅包含几十个依赖项。要创建基于arcpy-base的环境,请运行以下conda命令:

conda create -n my-env arcpy-base

凭借一组有限的库,arcpy-base无法完全支持所有基于PythonArcGIS Pro功能。arcpy-base仍可用于运行几乎所有地理处理工具和ArcPy函数,其中包括NumPyGDAL 和Pandas等软件包。

仅使用 arcpy-base将限制对Notebooks(从 ArcGIS Pro 内部和外部)、ArcGIS API for Python 以及许多其他库(包括 matplotlib、pillow、pytest、requests、scipy、sqalachemy 和 swat)的访问权限。

3.2. 克隆arcgispro-py3环境

可以使用ArcGIS Pro包管理器来克隆arcgispro-py3环境。

打开ArcGIS Pro软件,点击Project(工程)。

点击包管理器Package Manager,可以看到当前Python环境已经下载的依赖。

右侧矩形红框查看当前的Python环境,可以点击设置按钮添加Python环境。

可以新建环境,也可以复制环境。

4. 注意事项

官方的建议是不要修改默认环境,否则很可能会影响ArcGIS Pro软件运行。

小小声说一下,我本地为了方便,一直使用的是默认arcgispro-py3环境,到目前为止,还没出现什么问题(何时因为环境问题导致ArcGIS Pro软件无法运行,我还会发文进行说明的)。

参考资料[1] 

ArcPy,一个基于 Python 的 GIS 开发库简介


GIS之路-开发示例数据下载,请在公众号后台回复:vector

全国信息化工程师-GIS 应用水平考试资料,请在公众号后台回复:GIS考试

GIS之路 公众号已经接入了智能 助手,可以在对话框进行提问,也可以直接搜索历史文章进行查看。

都看到这了,不要忘记点赞、收藏 + 关注

本号不定时更新有关 GIS开发 相关内容,欢迎关注 


    

GeoTools 开发合集(全)

OpenLayers 开发合集(全)

GDAL 开发合集(全)

GIS 影像数据源介绍

GeoJSON 数据源介绍

GIS 名词解释

ArcPy,一个基于 Python 的 GIS 开发库简介

GIS 开发库 Turf 介绍

GIS 开发库 GeoTools 介绍

GIS 开发库 GDAL 介绍

地图网站大全

从微信指数看当前GIS框架的趋势

Landsat 卫星数据介绍

OGC:开放地理空间联盟简介

中国地图 GeoJSON 数据集网站介绍

昨天以前首页

ArcPy,一个基于 Python 的 GIS 开发库简介

作者 GIS之路
2026年2月27日 20:36

^ 关注我,带你一起学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公司开发的基于PythonGIS数据处理、转换、分析的脚本。

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中,主要包含以下十大模块。

这十大模块包含了GIS数据处理、转换、分析的各方面,在学习中,可针对各模块进行专项练习。

既然ArcPy基于Python解释器,那么想要运行ArcPy脚本,就需要安装Python环境,而这已经集成ArcGIS产品中了,在ArcGIS10.x中集成的是Python2ArcGIS Pro中集成了Python3

1. 导入ArcPy

ArcPy模块的导入非常简单,可直接通过import arcpy导入。

# 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代码包括单行代码,也包括复杂的多行代码块。在窗口中输入以下代码,按回车运行。

# 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命令。使用参数运行该命令会显示对象的调用签名和文档字符串。

import arcpy 
help(arcpy)

4. ArcPy 基本词汇

主要介绍了要理解ArcPy帮助需要掌握的一些词汇,具有模块、类、函数等。

5. ArcGIS API for Python

还有一个需要区分一下ArcPyArcGIS API for Python

ArcGIS API for Python 是为WebGIS而设计的。 它是一个为执行GIS可视化和分析、空间数据管理和GIS系统管理任务提供广泛功能的Python库。

既可以交互使用,也可以通过脚本使用,使其成为GIS专业人员的通用工具。ArcGIS API for Python随附于ArcGIS Pro,但也可以与ArcGIS OnlineArcGIS 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_5E64CCAB40C24B0DB1ED80EF96176F73
  • https://pro.arcgis.com/zh-cn/pro-app/latest/arcpy/get-started/python-window.htm

GIS之路-开发示例数据下载,请在公众号后台回复:vector

全国信息化工程师-GIS 应用水平考试资料,请在公众号后台回复:GIS考试

GIS之路 公众号已经接入了智能 助手,可以在对话框进行提问,也可以直接搜索历史文章进行查看。

都看到这了,不要忘记点赞、收藏 + 关注

本号不定时更新有关 GIS开发 相关内容,欢迎关注 


    

GeoTools 开发合集(全)

OpenLayers 开发合集

GDAL 开发合集(全)

GIS之路公众号2025年度报告

GDAL 遥感影像数据读取-plus

地图海报生成项目定位方式修改

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

关于浏览器无法进入断点的解决记录

小小声说一下GDAL的官方API接口

ArcGIS Pro 添加底图的方式

为什么每次打开 ArcGIS Pro 页面加载都如此缓慢?

GDAL 实现矢量数据转换处理(全)

国产版的Google Earth,吉林一号卫星App“共生地球”来了

日本欲打造“本土版”星链系统

❌
❌