ArcMap字段计算器程序用于创建唯一ID

时间:2014-06-25 19:20:57

标签: python field gis calculator arcmap

我正在使用ArcMap中的字段计算器 我需要为我县的每个雨水渠创建一个唯一的ID ID应如下所示:16-I-003

第一个数字是位于标题为“Munic”的栏目/栏目中的市政号码

这封信正在使用标题为“Point”的栏目/字段中的字母

最后一个数字只是1,但市政当局有多少排水渠。

到目前为止,我有:

rec=0
def autoIncrement()
pStart=1 
pInterval=1
 if(rec==0):
  rec=pStart
else:
 rec=rec+pInterval
return "16-I-" '{0:03}'.format(rec)

所以你可以看到我手动输入了市政号码,字母和连字符。但我想使用字段:Munic和Point,所以我不必在每次更改时手动输入它们。

对于python和ArcMap来说,我是初学者,所以请稍微简单一些。

1 个答案:

答案 0 :(得分:0)

我不熟悉ArcMap,因此无法直接帮助您,但您可能只是将您的功能更改为生成器:

def StormDrainIDGenerator(): rec = 0 while (rec < 99): rec += 1 yield "16-I-" '{0:03}'.format(rec)

如果你没问题,那么参数化生成器以接受Munic和Point值并在格式化字符串中使用它们。您可能也应该参数化结束值。

使用生成器将允许您将其放入任何后续接受迭代的表达式中,因此您只需通过说明列表(StormDrainIDGenerator())就可以创建这样的列表。

您的问题是如何将Munic和Point值转换为字符串ID?使用.format()?