按照行政区,对图斑进行编号

10W个图斑,其中有一个字段是行政区代码,10W个图斑分到了180个行政区,我要每一个行政区里面的图斑编号都是从1开始编号的,行政区代码的长度是9位,编号字段长度是16位,第一个编号应该是行政区(9位)+5个“0”+1,就是例如3302069010000001这样,不足位数的用0补齐。

将同一地类图斑自动编号(标记重复记录),例如根据DLBM字段,把具有相同值的记录标出来,并且按照从小到大的排序自动增加一个编号。
已邀请:

徐珂 - ArcGIS for Desktop

赞同来自: zsf xiaosi9524 李倩_422

【解决办法】:
Python代码如下(可以下载附件中的脚本,在字段计算器中加载,修改对应的字段名后可以运行):

UniqueDict = {}
def isDuplicateIndex(inValue):
   UniqueDict.setdefault(inValue,0)
   UniqueDict[inValue] += 1
   return str(UniqueDict[inValue])

字段中填写:
!QSDWDM! + isDuplicateIndex( !QSDWDM!).zfill(7)
字段计算.jpg

paulgis

赞同来自:

试了下10.2不能用

晨_614

赞同来自:

 10.2.2测试 可以   好用 如果涉及空间排序 使用工具箱里面的排序工具

Danranhutu - 爱知乎,爱AE开发

赞同来自:

一段代码,解决一个问题,提高一系列效率

吃饭夹菜喝汤

赞同来自:

10.0用不了啊

要回复问题请先登录注册