Запуск инструментов в окне Python

Когда окно Python открывается первый раз, его вид будет следующим:

Окно Python

Левый раздел — главное окно подсказок окна Python, в котором выполняется все команды Python. Правый раздел — окно Справка (help) и Синтаксис (syntax), в которых после запуска инструментов отображаются: сообщения исполнений, Справка для конкретного инструмента, его функция или класс в виде введенного кода.

Первый шаг к доступу инструментов и методов геообработки в окне Python — импортирование пакета сайта arcpy. Для этого введите команду import arcpy в окне подсказок и затем нажмите клавишу ВВОД. После завершения импортирования материалов arcpy в окне подсказки введите команду arcpy., на экране отобразится раскрывающийся список, содержащий перечень всех инструментов и методов геообработки и другие функции сценария. Этот список можно прокручивать, используя указатель мыши или клавиши клавиатуры Вверх (UP) и Вниз (DOWN). После введения дополнительной информации раскрывающийся список будет отфильтрован для поиска подходящих инструментов или методов, соответствующих введенной информации. Например, если arcpy.addf введен в окне Python, в раскрывающемся списке будет содержаться только инструменты или методы, начинающиеся с этих знаков. Если AddField_management был выбран из списка через прокрутку или щелчком мыши, полное имя инструмента будет автоматически введено в окне подсказки после нажатия на клавишу TAB. Когда введены открывающие круглые скобки — (, — справка инструмента AddField_management отобразится в окне Справки и Синтаксис. По умолчанию будет выделен первый параметр.

В окне Python имя инструмента используется вместо метки инструмента. Метка инструмента отображается в верхней части диалогового окна инструмента или в окне Каталог (Catalog). Имена инструментов похожи на метки инструментов, но они не содержат пробелы. В окне Python псевдоним панели инструментов также включает в себя имя инструмента. Это имя используется для решения любых потенциальных конфликтов, когда несколько инструментов носят одно и то же имя. Например, в зависимости от количества инсталляций инструмента (Clip_analysis, Clip_arc, Clip_management), может быть целых три инструмента Вырезать (Clip).

Имя и метка свойств инструмента (Tool properties name and label)Метка и псевдоним имени свойств панели инструментов (Toolbox properties name label and alias)

После введения всех параметров нажмите на клавишу ВВОД для включения инструмента. Сообщения исполнения отобразятся в разделе Справка и синтаксис окна Python. В зависимости от типа сообщений, цвет его текста будет разным. По умолчанию цвета и значения текста сообщений следующие:

Цвет (Color)

Значение (Meaning)

Черный (Black)

Обычное информационное сообщение.

Красный (Red)

Сообщение об ошибке. Результаты не были созданы (Results were not created).

Оранжевый (Orange)

Предупреждающее сообщение Полученный результат может отличаться от ожидаемого вами (Results may not be what you expect).

Цвета и значения сообщения исполнений

Вы можете изменить эти цвета, щелкнув правой клавишей мыши в разделах Справка и Синтаксис окна Python и выбрав в них раздел Формат (Format).

Сравнение требуемых и опциональных параметров.

Параметры инструмента могут быть либо обязательными, либо необязательными. Опциональные параметры взяты в фигурные скобки { }; требуемые параметры не содержат скобок.

Тип параметра (Parameter Type)

Символ (Symbol)

Значение (Meaning)

Обязательно (Required)

Требуемый параметр (Required parameter). Эти типы параметров в команде всегда находятся первыми. Вы должны ввести значение для требующегося параметра.

Дополнительно (Optional)

{ }

Опциональный параметр (Optional parameter). Необязательные параметры всегда идут после обязательных. Если вы не ввели значения для опционального параметра, в этом случае будет рассчитано и использовано значение по умолчанию. Значение по умолчанию параметра можно найти в разделе Справка инструмента.

Типы параметров (Parameter types)

Инструменты могут иметь несколько опциональных параметров. Иногда только некоторые опциональные параметры инструмента относятся к объекту; эти параметры необходимо настроить. В программе существует три способа, как пропустить или отодвинуть дополнительный параметр:

На показанном ниже примере используется инструмент Add Field, но четвертый и пятый параметры оставлены с их значениями по умолчанию с помощью использования трех техник.

# Use empty strings to skip optional parameters
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", "", "", 120)

# Use the # sign to skip optional arguments
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", "#", "#", 120)

# Use the parameter name to bypass unused optional arguments
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", field_length=120)

Значения по умолчанию (Default values)

Раскрывающийся список Параметры (Parameter drop-down lists)

Раскрывающиеся списки отобразятся в окне Python, когда инструментом будут найдены имеющиеся опции для определенного параметра. Являясь частью диалогового окна инструмента, параметр идентифицирует и отфильтрует подходящие значения. Например, инструмент AddXY_management допускает только классы точечных объектов или слои для входных объектов; таким образом, раскрывающийся список для этого параметра будет содержать только доступные векторные слои точечных объектов. Также инструмент DeleteField_management на основе входной таблицы будет создавать раскрывающийся список полей.

Многозначные параметры (Multivalue parameters)

Параметр инструмента в зависимости от параметра может принимать только одно или несколько значений. Когда принимается многозначные значения, значение параметра может быть указано в списке Python.

Инструмент Удалить поле (Delete Field) принимает для удаления несколько полей. Для удаления нескольких полей с использованием инструмента Удалить поле (Delete Field) введите в списке Python имена полей в виде строчек.

arcpy.DeleteField_management("c:/base/rivers.shp", ["Type", "Turbidity", "Depth"])

Некоторые инструменты, такие как инструменты наложения: Union_analysis и Intersect_analysis, имеют параметры, представленные в виде таблицы, то есть с несколькими рядами, содержащими многозначные параметры для каждого ряда. Если используется инструмент Union_analysis, параметр Входные объекты (Input Features) поддерживает использование рангов приоритета, использующихся для сохранения объектов с высокой степенью точности. Ранг как опциональное значение назначается для каждого класса входного объекта, в котором 1 является самым высоким рангом.

Параметры, отображаемые в виде таблицы, называются Таблицами значений (Value Tables). Таблицы значений вводятся в главный список окна Python. Для параметра Входных объектов в инструменте Union_analysis ранг указывается после имени класса объекта вместе с запятой, разделяющей значения. Ранговая пара каждого класса объектов находится в списке больших значений (отсюда название — главный список — list-of-lists). На примере ниже показано, как создать такой список. Была создана среда рабочей области. Это позволит избежать вам повторения создания одной и той же рабочей области для каждого класса объектов.

arcpy.env.workspace = "D:/St_Johns/data.mdb/neighborhoods"
inputList = [["east", 1],["west", 1],["south", 1],["north", 2]]
arcpy.Union_analysis(inputList, "D:/St_Johns/data.mdb/land_use")

Соглашение об использовании параметров (Parameter conventions)

Общая информация (In general)

Получение справки в окне Python.

После ввода имени команды существует несколько способов ее использования и получения справки по конкретному инструменту.

  1. В строке подсказки введите имя инструмента в круглых скобках: arcpy.Buffer_analysis(Buffer_analysis)(. В окне Справка и синтаксис отобразится информация по использованию инструмента.
  2. Используйте встроенную в окно Python функцию справки и введите в поле функции имя инструмента, по которому вы хотите получить справку. Справка будет отображена в главном разделе окна Python.
  3. Используйте встроенную в Python функцию атрибута __doc__, идущую за инструментом, для отображения строки документации. Справка будет отображена в главном разделе окна Python.
>>> arcpy.Buffer_analysis(
>>> help(arcpy.Buffer_analysis)
>>> print arcpy.Buffer_analysis.__doc__
9/11/2013