中文

操作方法:在 Python 脚本中调用 ModelBuilder 模型

摘要

在某些情况下,与将整个模型转换为 Python 脚本相比,使用 Python 脚本调用 ModelBuilder 内的模型通常更为简便。 在调用模型之前,必须将自定义工具箱添加到 Python 脚本中,因为模型存储在自定义工具箱中。 有关详细信息,请参阅 ArcGIS Desktop:添加并连接数据和工具

过程

要在 Python 脚本中调用模型,请使用 arcpy.AddToolbox() 函数添加自定义工具箱。 然后,通过在参数中引用工具箱来调用模型,或使用工具箱的别名直接调用模型。 下列步骤将介绍如何完成上述操作:

  1. 创建引用工具箱的变量。 以下为使用 arcpy.AddToolbox() 函数的示例:
    tbx = arcpy.AddToolbox("C:/Temp/MyToolbox.tbx")
  2. 使用以下任一代码示例调用模型。
    • 使用已定义的变量调用模型
      MyToolbox 是在步骤 1 中添加的自定义工具箱。 标记为 Sample1 的模型位于 MyToolbox 中。 使用以下代码示例:
      tbx.Sample1()
    • 使用预定义的工具箱别名调用模型
      SampleMyTools 是在步骤 1 中添加的 MyToolbox 的预定义工具箱别名。
      arcpy.Sample1_SampleMyTools()
:
最好为工具箱添加别名。 别名不能包含空格或特殊字符,例如下划线 (_)。

如果模型需要用户输入,请在 Python 脚本中创建变量,并将输入 shapefile 的位置作为模型参数的参数。 例如,以下代码示例会将输入要素类传递到模型中的“复制要素”工具。

inFC = "C:/Temp/input.shp"

tbx.Model(inFC)

相关信息