脚本工具消息

运行工具时,ArcPy 可标识调用它的应用程序。由此即可在 Python 中写入消息。这些消息将自动显示在工具对话框中、地理处理历史记录中以及 Python 窗口中。而且调用您工具的任何模型或脚本工具均有权访问您所写入的消息。

要了解有关消息的详细信息,请参阅了解脚本工具中的消息

在执行工具期间,系统会写入可使用地理处理函数进行检索的消息。用于写入消息的四个 ArcPy 函数如下所示:

函数说明

AddMessage(message)

信息性消息将添加到该工具的消息中。

AddWarning(message)

警告消息将添加到该工具的消息中。

AddError(message) -

错误消息将添加到该工具的消息中。

AddIDMessage(message_type, message_ID, add_argument1=None, add_argument2=None) -

可以使用地理处理消息代码添加任意类型的消息。

调用 AddIDMessage 会显示一条简短消息和该消息的 ID,这是指向有关问题的原因和解决方案的说明的链接。使用 AddErrorAddIDMessage 添加错误消息时,将会出现下面的情况:

  • 脚本继续执行。您负责添加合适的错误处理逻辑和停止执行脚本。例如,您可能需要删除中间文件或光标。
  • 根据脚本的返回结果,调用脚本或模型将收到系统错误并且停止执行。

添加消息示例

在以下示例中,系统会评估输入内容,如果不包含输入要素,则会向工具添加错误消息,并会引发 arcpy.ExecuteError 异常以结束工具运行。

import arcpy
input = arcpy.GetParameterAsText(0)
output = arcpy.GetParameterAsText(0)
       
# If the input has no features, add an error message, and raise
#  an arcpy.ExecuteError
if int(arcpy.GetCount_management(input)[0]) == 0:
    arcpy.AddError("{0} has no features.".format(input))
    raise arcpy.ExecuteError

相关主题


在本主题中
  1. 添加消息示例