如何在ArcGIS for Desktop的字段计算器中执行If语句?


10

我有一个shapefile,其中包含两个数字字段(“ Dist_1”和“ Dist_2”)。我想要一个字段计算,它将使用三个答案之一填充另一个字段(“结果”):

首先,如果Dist_1大于Dist_2,则以'True'填充结果;第二,如果Dist_1小于Dist_2,则以'False'填充结果;如果Dist_1和Dist_2相等,则以'Equal'填充第三。


请不要添加“谢谢”作为答案。拥有足够的声誉后,您将可以投票认为有用的问题和答案。- 来自评论
Midavalo

Answers:


15

解析器:

Python

代码块:

def calc(f1,f2):

    if f1 > f2:
        return "True"
    elif f1 < f2:
        return "False"
    else:
        return "Equal"

表达:

calc(!Dist_1!, !Dist_2!)

或以图形方式(不幸的是,您无法在此处看到所有代码块)

在此处输入图片说明


PolyGeo谢谢-但是遇到错误000989-分析错误:unindent与任何外部缩进级别都不匹配(第3行)。你能解码吗?!
克里斯·U

2
对于if,elif,else语句(2)和return语句(4)保持一致的间距。每个都应该在自己的行上。
保罗

1
Paul / PolyGeo,非常感谢您的光临!
克里斯·U
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.