(四十七)arcpy开发&UpdateCursor更新

UpdateCursor游标用于对记录的更新,当然也可以用于数据的删除。我们只要正确的读取好数据后,获取游标,然后在设置我们需要取出的字段,当然也可以设置过滤条件。最后使用updateRow函数来更新即可。现在我们来做一个测试案例。如下图所示,是我们准备好的一份测试数据。现在我们设置要获取字段TDYT,也可同时获取其他的数据。

我们在这里做这样的操作,如果TDYT这个字段里面的数据值为空,那么我们就将"乔木林地"值给赋过去。也就是填写过去。我们来看一下代码实现。

#coding:utf-8
import arcpy


shpPath=r"C:\Users\qin\Desktop\demo\test20.shp"
with arcpy.da.UpdateCursor(shpPath,["FID","TDYT"]) as cursor:
    for row in cursor:
        strTDYT=row[1]
        if strTDYT.encode("utf-8")==' ':
            row[1]="乔木林地"
            cursor.updateRow(row)
            print "the {} row is empty".format(row[0])
            #cursor.deleteRow(row)
print "finished"

以及pycharm控制台为我们打印的信息。对应原来的数据,可以看得出,现在已经正确的更新了数据。

Connected to pydev debugger (build 182.4505.26)
the 1 row is empty
the 2 row is empty
the 4 row is empty
the 18 row is empty
the 19 row is empty
finished

Process finished with exit code 0

那么我们下面来打开属性表看看是不是这样的。从下面的数据可以看得出,数据已经成功的填写了。



                              更多内容,请微信扫二维码关注公众号,或者加入arcpy开发qq学习群:487352121

                                                                       

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yGIS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值