我是靠谱客的博主 风中墨镜,最近开发中收集的这篇文章主要介绍使用Python/arcpy批量向shp文件添加字段,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

版权声明:转载请注明作者(独孤尚良dugushangliang)出处:https://blog.csdn.net/dugushangliang/article/details/103874623

 

相关需要,所以要实现这个,以下内容经验确实(经过验证确定属实)。

参官方文档得:

import arcpy as ap
ap.env.workspace='D:/temp'

先把shp文件所在文件路径设置为工作空间。下面三种操作,都是向ga2.shp文件中添加字段的,添加类型本处是双精度,第二个参数是字段名,第三个参数是字段类型,都可根据需要更改。

ap.AddField_management(u'ga2',u'area2010',"DOUBLE")
ap.AddField_management(u'ga2.dbf',u'area2010',"DOUBLE")
ap.AddField_management(u'ga2.shp',u'area2010',"DOUBLE")

需要注明:“年份2020年”这样的字段名称,会报错,下图中第一个是Python窗口的反馈,第二个是直接手动添加的反馈。

刚开始我以为是代码有问题,后来发现这是shp本身的机制导致的。

这个有字段名称长度限制。

限制英文10位,中文5位,一个中文相当于一个英文或数字。不过这不是绝对的,还得看版本,感谢尘无的图:

那么,如果想要比较长的字段名称怎么办?别用shp了,用gdb吧。

ap.AddField_management('cities',u'面积2000年',"DOUBLE")

那批量怎么搞?来个for循环就成了。

li=[u'字段1名称',u'字段2名称',u'字段3名称',u'字段4名称',u'字段5名称']

for i in li:
  ap.AddField_management('cities',i,"DOUBLE")

这是批量同类型的,如果不是,那就做个字典,for key,value in di.items()。

 

独孤尚良dugushangliang——著

最后

以上就是风中墨镜为你收集整理的使用Python/arcpy批量向shp文件添加字段的全部内容,希望文章能够帮你解决使用Python/arcpy批量向shp文件添加字段所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部