Доступ к параметрам в инструменте-скрипте

Рисунок, приведенный ниже, показывает диалоговое окно инструмента-скрипта с тремя параметрами: входное рабочая область, вырезающий класс объектов, и выходная рабочая область. Все классы объектов во входной рабочей области вырезаются указанным вырезающим классом объектов (с помощью инструмента Вырезать (Clip)), и записываются в выходную рабочую область.

Параметры инструмента-скрипта

На приведенной выше иллюстрации после ввода значений параметров в диалоговое окно инструмента и нажатия кнопки ОК скрипт считывает значения параметров с использованием метода GetParameterAsText() следующим образом:

# Import arcpy site-package
#
import arcpy
from arcpy import env

# Read the parameter values:
#  1: input workspace
#  2: input clip features
#  3: output workspace
#
inWorkspace   = arcpy.GetParameterAsText(0)
clipFeatures  = arcpy.GetParameterAsText(1)
outWorkspace  = arcpy.GetParameterAsText(2)
env.workspace = inWorkspace

sys.argv and arcpy.GetParameterAsText

Существует два метода считывания параметров: sys.argv и функция arcpy GetParameterAsText(). Можно использовать любой из этих подходов. Приведенный выше пример можно переписать для использования sys.argv:

# Read the parameter values:
#  1: input workspace
#  2: input clip features
#  3: output workspace
#
inWorkspace   = sys.argv[1]
clipFeatures  = sys.argv[2]
outWorkspace  = sys.argv[3]
env.workspace = inWorkspace

sys.argv имеет ряд ограничений по количеству принимаемых символов. GetParameterAsText() не имеет ограничений, связанных с количеством символов. Исключительно по этой причине рекомендуется использовать GetParameterAsText.

sys.argv[0] возвращает имя файла скрипта.

Связанные темы

9/10/2013