ArcGIS属性表字段进行自动排序编号

最近看到群里有同学提问,怎样给属性表中的字段按顺序进行编号,今天就给大家介绍一下方法~

目录

01 直接使用FID或OID字段

02 FID或OID非顺序排列

03 使用Python语句进行排序

04 按照某字段排序后编号

05 编号前自动填充为多位数


01 直接使用FID或OID字段

如果数据是shapefile格式,系统自带FID字段,一般从0开始,可以自行添加新字段,使新字段=FID+1,就可以从1开始编号。
如果数据是GDB格式,系统自带OBJECTID字段,从1开始,直接使用,或添加新字段,使新字段=OBJECTID。

02 FID或OID非顺序排列

如果你的OBJECTID并不是按顺序编号,如图:

只需要重新导出一下,OBJECTID字段就会自动从1开始编号。

直接使用该字段,或添加新字段均可。

03 使用Python语句进行排序

如果你的OBJECTID并不是按顺序编号,如图:

也可以使用Python语句进行自动排序。

解析程序:

Python

表达式:

autoIncrement()

代码块:

rec=0

def autoIncrement():

global rec

pStart = 1 #从1开始,可自行调整

pInterval = 1 #间隔为1,可自行调整

if (rec == 0):

rec = pStart

else:

rec = rec + pInterval

return rec

注意写代码时前面要加空格,符合Python代码的规则: 

注意:此方法实际是按照FID或OID顺序进行编号的,如果按照某字段排序后进行编号,需要使用排序工具。

04 按照某字段排序后编号

如果需要按照某字段进行排序,比如长度,首先使用排序工具:

结果表中的OID字段就是按照长度进行排序并编号的。

后续可按照前面介绍的1、2、3种方法添加新字段后进行编号。

05 编号前自动填充为多位数

如果需要将编号设为更美观的相同位数,比如001,002,字段需要为文本型字段。

添加文本型字段,右键字段计算器:

代码:str( !OBJECTID!).zfill(3)

使用.zfill()函数定义需要的位数,结果如下:

关于属性表排序相关的小技巧就介绍到这里吧~~~

欢迎大家关注培训中心公众号:higispx

ArcGIS属性表字段进行自动排序编号icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkwMDY0NzMzMg==&mid=2247484744&idx=1&sn=59100cbbfb8bad3a007f364aff5cfcc9&chksm=c0419583f7361c95e12736445eeea25ea6aa884a3649710cb135794f4a1bac55ad6ea8d9acd3&scene=21#wechat_redirect

我们将持续不断地更新更多技术文章!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值