Я довольно новичок в Python и пытаюсь написать сценарий для использования в ArcGIS 10.1 (arcpy); основная идея состоит в том, чтобы добавить новое поле (francis), проверить значения в нескольких других полях, если они являются нулевыми (-99), а затем вывести 0 во Фрэнсис, иначе запустить простое вычисление. Однако я получаю эту ошибку и у меня возникают проблемы движущуюся за ним:«Значение требуется» на arcpy.CalculateField
Traceback (most recent call last):
File "C:\gislab2\Python\take_home\part1\prelim_if2.py", line 28, in arcpy.CalculateField_management(Output_Feature_Class, "Francis", "", "PYTHON_9.3", "")
File "C:\Program Files\ArcGIS\Desktop10.1\arcpy\arcpy\management.py", line 3128, in CalculateField raise e
ExecuteError: Failed to execute. Parameters are not valid. ERROR 000735: Expression: Value is required Failed to execute (CalculateField).
Вот код
# Import arcpy module
import arcpy
print "start your engines"
# Script arguments
Shapefile = "C:\\gislab2\\Python\\take_home\\USCancer2000.shp"
Field_Name = Francis
Output_Feature_Class = "C:\\gislab2\\Python\\take_home\\USCancer2000.shp"
# Local variables:
USCancer2000__2_ = Output_Feature_Class
# Process: Add Field
arcpy.AddField_management(Shapefile, "Francis", "LONG", "", "", "", "", "NULLABLE", "NON_REQUIRED", "")
# Process: Calculate Field
arcpy.CalculateField_management(Output_Feature_Class, "Francis", "", "PYTHON_9.3", "")
##
### Process: If-then check for missing values
##
if "Cnt1"==-99:
Field_name=7
elif "Cnt2"==-99:
Field_name=7
elif "Cnt3"==-99:
Field_name=7
elif "Pop1"==-99:
Field_name==7
elif "Pop2"==-99:
Field_name=7
elif "Pop3"==-99:
Field_name=7
else:
Field_name=("Cnt1"+"Cnt2"+"Cnt3")/("Pop1"+"Pop2"+"Pop3")
print "done"
Большое спасибо заранее! david
вы можете показать трассировку стека – karthikr
Traceback (самый последний вызов последнего): Файл "C: \ gislab2 \ Python \ take_home \ part1 \ prelim_if2.py", строка 28, в arcpy.CalculateField_management (Output_Feature_Class, "Francis", "", "PYTHON_9.3", "") Файл "C: \ Program Files \ ArcGIS \ Desktop10.1 \ arcpy \ arcpy \ management.py", строка 3128, в CalculateField raise e ExecuteError: Не удалось выполнить. Параметры недействительны. ERROR 000735: Выражение: требуется значение Не удалось выполнить (CalculateField). >>> заранее заранее –
Поместите это в свой вопрос, где его можно отформатировать правильно, и люди могут его прочитать! – kindall