2017-02-18 3 views
0

У меня есть необязательный параметр поля от arcpy.GetParameterAsText.ArcPy: дополнительный параметр курсора

Как использовать arcpy.da.SearchCursor независимо от того, было ли поле дано или нет?

> infc = arcpy.GetParameterAsText(0) 
> field = arcpy.GetParameterAsText(1) 
> arcpy.da.SearchCursor(infc,["[email protected]", field]) 

Ошибка RuntimeError: Не удается найти поле «»

Как я могу сделать поле_формы параметр в курсоре необязательно?

+1

Вопросов ArcPy задано и ответили на [gis.se] Stack Exchange, чем здесь. – PolyGeo

ответ

2

Включите условное выражение, чтобы определить, получает ли field значение. Если это так, включите его в список полей курсора; если нет, укажите другой вариант по умолчанию.

field = arcpy.GetParameterAsText(1) 

# if variable `field` is blank 
if field == "" or field is None: 
    cursor_fields = ["[email protected]"] 
# otherwise 
else: 
    cursor_fields = ["[email protected]", field] 

arcpy.da.SearchCursor(infc, cursor_fields) 
Смежные вопросы