Вы можете проверить метод SearchCursor здесь . Единственное, что строит выражение SQL вместо where_clause
. Выражения запросов аналогичны стандартным выражениям SQL в ArcGIS. это похоже на диалоговое окно Выбор по атрибутам. Вы можете написать свой собственный инструмент, взглянув на следующий код
Резюме
Функция SearchCursor устанавливает курсор только для чтения на класс пространственных объектов или таблицу. SearchCursor может использоваться для перебора объектов строки и извлечения значений полей. Поиск может быть необязательно ограничен предложением where или полем и, возможно, отсортирован.
Синтаксис SearchCursor (набор данных, {where_clause}, {пространственные_референции}, {fields}, {sort_fields})
Пример:
import arcpy
# Open a searchcursor
# Input: C:/Data/Counties.shp
# FieldList: NAME; STATE_NAME; POP2000
# SortFields: STATE_NAME A; POP2000 D
#
rows = arcpy.SearchCursor("C:/Data/Counties.shp", "'POP2000' > 5000", "", "NAME;
STATE_NAME; POP2000", "STATE_NAME A; POP2000 D")
currentState = ""
# Iterate through the rows in the cursor
#
for row in rows:
if currentState != row.STATE_NAME:
currentState = row.STATE_NAME
# Print out the state name, county, and population
#
print "State: %s, County: %s, population: %i" % \
(row.STATE_NAME, row.NAME, row.POP2000)
я надеюсь, что это поможет вам ....