在本教程中,您将学习如何通过独立的 Python 脚本在 ArcGIS Pro 中创建脚本工具。

脚本工具是可作为地理处理工具运行的 Python 脚本文件。这意味着您只需担心设置工具的正确参数并运行它:输出和消息显示在 Pro 中,而 Python 脚本从编辑器中运行,输出可能显示在终端或单独的输出文件中。创建脚本工具后,该工具现在是 Pro 的一部分,而独立的 Python 脚本可以保存和存储在任何地方。从 Python 创建脚本工具是让其他人使用您的 Python 脚本的好方法,如果他们不了解 Python 或更喜欢从 Pro 运行工具作为工作环境的话。

创建脚本工具涉及以下任务:

  1. 编写 Python 脚本
  2. 对其进行编辑以便 Pro 可以将其转换为脚本工具
  3. 使用向导创建脚本工具
  4. 测试和运行该工具

第 1 步:编写 Python 脚本

我们将使用一个简单的 Python 脚本来描述 shapefile 要素类的多个属性。它还打印所有表字段名称及其数据类型。脚本如下:

如您所见,它使用 shapefile 要素类作为输入,构成了Natural Earth 快速入门工具包的一部分,如果您想测试代码并继续操作(您也可以使用自己的数据),可以下载该工具包。此代码可以直接从 Python notebook 运行,也可以作为独立的 Python 文件运行。为了能够将此代码作为脚本工具运行,我们必须对其进行一些编辑。我们接下来会这样做。

第二步:修改代码

如果您使用 Buffer 等地理处理工具,您可能知道必须先指定输入和输出数据集位置,然后才能运行该工具。这同样适用于任何脚本工具,这意味着需要使用 arcpy.GetParameterAsText() 将输入/输出数据集和文件位置设置为参数,以便您可以在运行脚本工具之前选择自己的输入和输出文件位置。同样,Python 脚本中的打印语句需要替换为 arcpy.AddMessage() 才能显示为自定义消息。如果我们将其应用于我们的脚本,它将如下所示:

面向arcgis的python脚本编程pdf arcgis中的python脚本运行_开发语言

 

将新代码保存为 Python 脚本文件,因此扩展名为 .py。该文件将构成脚本工具的基础。

第 3 步:创建脚本工具

打开 Pro 并创建一个新项目。在“目录”窗格中,单击“工具箱”,然后单击“新工具箱.atbx”。为工具箱命名并查看它出现在目录窗格中。

接下来,右键单击新工具箱并选择“新建”和“脚本”:

面向arcgis的python脚本编程pdf arcgis中的python脚本运行_开发语言_02

 

首先,将“Name”字段设置为“DescribeFCdata”并将“Label”字段设置为“Describe properties of a shapefile feature class and table field names”。接下来,单击“执行”选项卡并单击“脚本文件”字段最右侧的文件夹图标以浏览外部脚本。添加您在第 2 步中创建的 Python 文件 (.py),并确保使用您自己的 Python 代码从引用的 Python 文件更新代码。确保代码得到更新,以便您可以在屏幕上看到您自己的 Python 代码。接下来,不要单击“确定”,而是单击左侧选项卡中的“参数”。在这里,您将设置在运行脚本工具之前要选择的输入文件。选择“label”,键入“Set Feature Class”,单击“Name”下的字段,接受默认值并选择“Data Type”下的“Feature Class”。选择“值表”。

面向arcgis的python脚本编程pdf arcgis中的python脚本运行_字段_03

 

单击“确定”。现在应该将脚本工具添加到目录窗格中。

双击它,设置您选择的要素类,运行脚本工具并在“打开历史记录”下查看 Python 脚本的打印语句,然后查找“消息”选项卡: