2015-08-18 4 views
0

Я пробовал все нижеприведенные фрагменты, чтобы использовать Parser Parser в полевом калькуляторе и обновлять значения поля type на основе файла с именем MamerMN, но во всех них я получаю синтаксис ошибка в окне результатов геообработки!Ошибка в полевом калькуляторе с Python в ArcMap

if !MamerMN! <= 0.151560: 
    return 1 

и

if (!MamerMN! <= 0.151560): 
    return 1 

и

if (MamerMN <= 0.151560): 
    return 1 

и

def(MamerMN) 
if MamerMN <= 0.151560: 
    return 1 

и

def(MamerMN) 
if (MamerMN <= 0.151560): 
    return 1 

Не могли бы вы сообщить мне, что я делаю неправильно?

ответ

1

Вы неправильно записываете свои функции. В полевом калькуляторе убедитесь, что вы установите флажок «Показывать кодовый блок», поэтому появится поле «Предзаписывающий сценарий» . Внутри коробки Pre-Logic, написать функции-

def calcValue(mamerMN): 
    if mamerMN <= 0.151560: 
     return 1 

, а затем в поле под землей, где он говорит, что field_name = вы должны написать имя функции и значение поля вы проходящие в он окружен возгласами. Так что, если ваша функция выше называется calcValue можно было бы написать

calcValue(!mamerMN!) 
1

Не видя графики, что ваш Field Calculator выглядит, как я подозреваю @csterling, вероятно, прав. Однако альтернативой является только Select by Attribute, где "mamerMN" <= 0.151560, а затем Field Calculate ваших выбранных функций 1 на обычном пути, не требуя кода.