В разделе синтаксиса справочной страницы инструмента содержатся сведения для каждого параметра инструмента. В нем также содержится синтаксис для использования инструмента в Python.
Подпись инструмента
Первая строка под заголовком синтаксиса содержит подпись инструмента.
Имя и псевдоним инструмента
В окне Python имя инструмента используется вместо подписи инструмента.
- Подпись инструмента отображается в верхней части диалогового окна инструмента или в окне Каталог (Catalog).
- В Python псевдоним панели инструментов следует после имени инструмента, разделенный подчеркиванием. Например, в Python инструмент Симметричная разность (Symmetrical Difference) идентифицируется как SymDiff_analysis.
Необязательные параметры
Параметры инструмента могут быть либо обязательными, либо необязательными. Необязательные параметры заключены в фигурные скобки ({}), обязательные параметры – нет.
Тип параметра (Parameter Type) | Символ (Symbol) | Значение (Meaning) |
---|---|---|
Обязательный | Требуемый параметр (Required parameter). Эти типы параметров в команде всегда находятся первыми. Вы должны ввести значение для требующегося параметра. | |
Необязательный (Optional) | { } | Опциональный параметр (Optional parameter). Необязательные параметры всегда идут после обязательных. Если вы не ввели значения для опционального параметра, в этом случае будет рассчитано и использовано значение по умолчанию. Значение по умолчанию параметра можно найти в разделе Справка инструмента. |
Имена необязательных параметров могут быть полезными как меню быстрого доступа в Python. Вместо того, чтобы пропускать другие неиспользуемые необязательные параметры с пустым набором кавычек ("") или знаком решетки ("#"), параметр можно четко настроить с помощью его имени.
# Use the parameter name to bypass unused optional arguments
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", field_length=120)
Таблица параметров
После подписи инструмента идет таблица параметров с тремя столбцами: Параметр (Parameter), Объяснение (Explanation) и Тип данных (Data Type). Строки в таблице параметров всегда находятся в порядке параметров (аналогично подписи инструмента).
Диалоговое окно инструмента может отображать параметры в порядке, отличном от фактического порядка. Таким образом, в редких случаях порядок параметров в диалоговом окне инструмента может отличаться от порядка в таблице параметров. Для Python всегда используйте порядок, показанный в таблице параметров.
Столбец Параметр (Parameter)
Ячейки в данном столбце имеют имя параметра, независимо от того, является ли параметр необязательным. Для параметров, которые принимают форму списка, устанавливается синтаксис списка, как показано ниже.
Оформление | Описание |
---|---|
Простой список. Простые списки известны как параметры с несколькими значениями. | |
Список списков. Типом данных является Таблица значений (Value Table). Только встроенные инструменты и инструменты из набора Python могут иметь параметры с типом данных Таблица значений (Value Table). |
Простой список
Простой список содержит список отдельных значений. В примере выше параметр Расстояния (Distances) имеет двойной тип данных (показан в столбце Тип данных (Data Type)). Этот список можно выразить с помощью одного из перечисленных ниже методов.
# Method 1: A list of numbers
dist = [10.0, 20.0, 30.0]
# Method 2: A list of strings
dist = ["10.0", "20.0", "30.0"]
# Method 3: String representation of a list
dist = "10.0; 20.0; 30.0"
Таблицы значений – список списков
Типом данных списка списков является Таблица значений (Value Table). В примере выше параметр in_features является списком списков, в котором отдельный список содержит путь к набору данных объектов или слою и дополнительному разряду целого числа. Этот параметр можно выразить с помощью одного из перечисленных ниже методов.
# Method 1: A list of lists
inFeatures = [["counties", 2],["parcels", 1],["state"]]
# Method 2: A list of strings
inFeatures = ["counties 2", "parcels 1", "state"]
# Method 3: String representation, each list separated by a semicolon
inFeatures = "counties 2; parcels 1; state"
Столбец Объяснение (Explanation)
В ячейках данного столбца содержится информация о том, для чего используется параметр и как его можно настроить, включая опции ключевых слов. В большинстве случаев это объяснение аналогично объяснению в справке боковой панели (side-panel help) для инструмента. В некоторых случаях объяснение параметра может слегка отличаться от объяснения в справке боковой панели. Например, в диалоговом окне инструмента будет установлена опция для параметра Булевы (Boolean) (значение true/false), но описание в синтаксисе будет содержать две строки ключевого слова — одну для состояния true и одну для состояния false.
Ключевые слова являются строками. Они всегда заключены в кавычки при вызове инструмента. Например, инструмент AddField имеет ключевые слова для типа поля:
# Add field idField with data type of long
arcpy.AddField_management("Parks", "idField", "LONG", field_is_nullable="NULLABLE", field_is_required="NON_REQUIRED")
Тип данных
Каждый параметр инструмента имеет связанный тип данных (data type). Некоторые простые типы данных: строка (любой набор букв и цифр), булево (значение true или false) и длинное целое число (целочисленное значение от -2,147,483,648 до 2,147,483,647). В дополнение к этим простым типам данных существуют десятки других типов данных, специально построенных для данных, загруженных в ArcGIS, такие как Система координат и Экстент.
Использование объектов написания скриптов
Параметры инструментов обычно определяются с использованием простых текстовых строк. Имена набора данных, пути, ключевые слова, имена полей, допуски и имена доменов могут указываться с использованием строк в кавычках.
Некоторые параметры труднее задать с использованием простых строк; это комплексные параметры, для которых необходимо задать много свойств. Вместо того, чтобы задавать длинные, сложные текстовые строки, определяющие эти параметры, можно использовать классы (например, SpatialReference, ValueTable и Point). Документация для каждого инструмента содержит пример создания скриптов для задания и применения каждого параметра инструмента.
В следующем примере создается объект SpatialReference, который затем используется для задания выходной системы координат нового класса пространственного объекта, создаваемого с использованием инструмента CreateFeatureClass.
import arcpy
inputWorkspace = "c:/temp"
outputName = "rivers.shp"
prjFile = "c:/projections/North America Equidistant Conic.prj"
spatialRef = arcpy.SpatialReference(prjFile)
# Run CreateFeatureclass using the spatial reference object
#
arcpy.CreateFeatureclass_management(inputWorkspace, outputName, "POLYLINE",
spatial_reference=spatialRef)
Во многих рабочих процессах геообработки может потребоваться запустить определенную операцию, используя информацию о координатах и геометрии, при этом не желая проходить процесс создания нового (временного) класса пространственных объектов, отображения класса пространственных объектов с помощью курсоров, использования класса пространственных объектов, и последующего удаления временного класса пространственных объектов. Чтобы упростить геообработку, вместо этого в качестве входных и выходных данных можно использовать объекты геометрии. Объекты геометрии могут создаваться сначала, используя классы Geometry, Multipoint, PointGeometry, Polygon, или Polyline.