我使用ArcGIS 10.2.2基本许可证,尝试根据以下参数填充属性表中的列:
'If field1 is equal to field2, return field3, if not, return 'null''
字段1和2是文本,字段3是数字。
我在现场计算器中试过这段代码:
预逻辑脚本代码块...
def calc(Score):
if ( !Field1! == !Field2!):
return !Field3!
else:
return 'null'
Score = calc(!Score!)
我真的很喜欢编码,所以我真的不确定这是否有意义(抱歉),但任何帮助将不胜感激。另外,有没有人知道如果专门为ArcGIS学习python是一个很好的起点?
似乎有数百个教程,但我找不到专门用于编辑表格等的任何内容。
答案 0 :(得分:2)
对于Python代码块,您必须使用字段作为函数参数,例如:
def score(f1, f2, f3):
if ( f1 == f2):
return f3
else:
return None
表情:得分(!Field1!,!Field2!,!Field3!)
对于VB脚本代码块,您可以这样做:
Dim score
if ( [Field1]== [Field2]) then
score = [Field3]
else
score = vbnull
end if
表情:得分
请注意,如果字段可以为空,则字段值只能设置为null。