arcgis 字段计算器 条件赋值_ArcGIS属性表的“那些”事(字段排序、小班编号、属性多条件选择)...

ec59144163ccb5738836069057a530a4.gif

案例(1)我们经常在实际工作中要对字段按照由小到大的顺序进行排列,例如:1、2、3... ...

步骤一:打开图层属性表,新建字段(例如:zdbh)

4d2f03b85e3c809a98739bcecf11e09b.png

步骤二:在新建的字段(zdbh)上面右击,选择“字段计算器”---选中 python。

03587986edb9c0d4bc658293967eae68.png

步骤三:在“预逻辑代码块”复制、粘贴以下代码就好;

rec=-1

def autoIncrement():

 global rec

 pStart = 1 #起始值为1,可修改

 pInterval = 1 #间隔值为1,可修改

 if (rec ==-1): 

  rec = pStart 

 else: 

  rec = rec + pInterval 

 return rec

(上述代码含义:首先初始化rec为-1;接着定义一个autoIncrement方法,在这个方法里定义了一个局部变量rec,初始化pStart为1,它也是起始值,如果想typeid起始值为其它值可以修改pStart的值即可,pInterrval是间隔值,即依次递增的数字之间的间隔是1,如果想依次递增的数字之间的间隔是2或者3...等,可以修改pInterrval的值;再接着就是一个if()else语句,最后将rec进行返回。)

然后将autoIncrement()方法给zdbh,最后点击“确定”运行。

(注意将autoIncrement()方法给zdbh时,autoIncrement()方法前不能有空格,否则会报错!!!)

78ae8a875a5b7dab7ba85c782d628a0b.png

bdabfa865ea74a57305b4c7742309948.png

案例(2)在我们实际工作中还会经常遇见对小班进行编号,格式要求0001、0002、0003... ....0010等这种格式。

步骤同案例(1)我们在这里就不重复说了,还是老办法 Ctrl+C 、Ctrl+V需要改变的是代码如下:

rec=0

def autoIncrement():

 global rec

 pStart = 1 #adjust start value, if req'd 

 pInterval = 1 #adjust interval value, if req'd

 if (rec == 0): 

  rec = pStart 

 else: 

  rec = rec + pInterval 

 return rec

然后将(str(autoIncrement())).zfill(4) 给 zdbh1   最后点确定就行

b82a28f8863d5d3c837927bc013eb896.png

这里重点要强调一下(str(autoIncrement())).zfill(4)   这个数字4,如果要变成格式为00001 00002 这种的就修改为5 就行。

案列(3)一份属性表里面有3个县的代码和林种代码(111,112,117,233,251),现在我想按属性选择其中一个县里面的111和112。

步骤一:在图层上面右击、打开属性表——选择“按属性选择”

a87061152a1f490762d9487ebaffd91a.png

步骤二:选择需要的xian= 获取唯一值 and林种 in(111,112)

a7c4818c7426b8cdd15d3c496b1fa5ae.png

这个里面最重要的就是  in  它代表包含的意思。

文章转载于:智环成

本文仅限行业学习交流之用,版权、著作权归原载平台及作者所有。我们尊重作者的成果,如涉嫌侵权,请联系我们及时删除。

- END -

7.72GB ARCGIS  ERDAS  ENVI干货教程网盘下载 利用Python ArcGIS小图斑根据相邻地类属性融合 ArcGIS如何获取地理要素的几何边界及几何属性 处理好细节才更专业!ArcGIS不可或缺的制图技巧 用ArcGIS制图土地利用现状图.doc(文档可下载) ArcGIS制图小技巧之色带——横向(水平)图例 5a8318eeb07d8dff7a73e5a35c26bbf1.gif fa6f977c4615f326206469e297c1e3d3.gif戳原文,更有料!
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值