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

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

 

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

参官方文档得:

复制代码
1
2
import arcpy as ap ap.env.workspace='D:/temp'

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

复制代码
1
2
3
4
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吧。

复制代码
1
ap.AddField_management('cities',u'面积2000年',"DOUBLE")

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

复制代码
1
2
3
4
5
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文件添加字段内容请搜索靠谱客的其他文章。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部