插个广告,制作ArcGIS的Tool工具学习下面的教程就对了:

以下是正文:

先看如何增加一个字段

函数:arcpy.AddField_management

语法:AddFields_management (in_table, field_description)

参数

说明

数据类型

in_table

要添加指定字段的输入表。该字段将被添加到现有输入表,并且不会创建新的输出表。

可将字段添加到 ArcSDE 的要素类、文件或个人地理数据库的要素类、coverage、shapefile、栅格目录、独立表、带属性表的栅格和/或图层。

Mosaic Layer;

Raster Catalog Layer;

Raster Layer;

Table View

field_name

要添加到输入表的字段的名称。

String

field_type

在创建新字段时所使用的字段类型。

TEXT —名称或其他文本特性。

FLOAT —特定范围内含小数值的数值。

DOUBLE —特定范围内含小数值的数值。

SHORT —特定范围内不含小数值的数值;编码值。

LONG —特定范围内不含小数值的数值。

DATE —日期和/或时间。

BLOB —影像或其他多媒体。

RASTER —栅格影像。

GUID —GUID 值

String

field_precision

(可选)

描述可存储在字段中的位数。所有位都将被计算在内,而无论其处于小数点的哪一侧。

如果输入表是个人或文件地理数据库,则将忽略字段精度值。

Long

field_scale

(可选)

设置可存储在字段中的小数位数。此参数仅可用于浮点型和双精度数据字段类型。

如果输入表是个人或文件地理数据库,则将忽略字段小数位数值。

Long

field_length

(可选)

要添加的字段的长度。它为字段的每条记录设置最大允许字符数。此选项仅适用于文本或 blob 类型的字段。

Long

field_alias

(可选)

指定给字段名称的备用名称。此名称用于为含义隐晦的的字段名称指定更具描述性的名称。字段别名参数仅适用于地理数据库和 coverage。

String

field_is_nullable

(可选)

不存在关联属性信息的地理要素。它们与零或空字段不同,仅支持地理数据库中的字段。

NON_NULLABLE —字段不允许空值。

NULLABLE —字段允许空值。这是默认设置。

Boolean

field_is_required

(可选)

指定要创建的字段是否是表的必填字段;仅支持地理数据库中的字段。

NON_REQUIRED —字段不是必填字段。这是默认设置。

REQUIRED —此字段是必填字段。必填字段具有永久性,不能删除。

Boolean

field_domain

(可选)

用于约束地理数据库中的表、要素类或子类型的任何特定属性的允许值。必须指定现有属性域的名称才能将其应用于字段。

String

例:

要对“省级行政区域”增加一个名为“Area”,类型是“Text”,长度是100的字段。

arcpy.AddField_management("省级行政区域",'Area',"TEXT",field_length=100)

①第1参“输入表”与第2参“字段名”是必选参数;

②其他参数为字段描述,可选,最好使用具名参数,如field_length=100。

批量添加字段的处理思路及代码

例:给“省级行政区域”添加“A、B、C、D”4个字段。

①用Excel制作出字段及其描述表;

②复制除标题行以为的内容,粘贴到txt文档,替换空格为“,”(英文符号,);

③arcpy批量添加字段,导入“Fields Description.txt”描述,每一行line是1个字段信息,将每行信息用“,”拆分装入列表lineList;新建字段各属性描述使用“具名参数=列表lineList各索引值指示数据的方式传入;

importarcpy#get txt file

f=open("C:/Users/yang/Desktop/Fields Description.txt",'r')#read line

line=f.readline()whileline:

lineList=line.split(',')#add field

arcpy.AddField_management("省级行政区域",field_name=lineList[0],field_type=lineList[1],field_length=lineList[2],field_precision=lineList[3],field_scale=lineList[4].replace("\n",""))#next line #code source: https://www.cnblogs.com/yzhyingcool/ QQ:975601416

line=f.readline()#close the txt file

f.close()

④使用该脚本时只需要改动“Fields Description.txt”描述文件的路径与待处理的要素名(或路径)即可。

Ps 示例中长度、精度均为随意写的,并不准确。

python编写arcgis脚本_ArcGis Python脚本——批量添加字段相关推荐

  1. pythonarcgis插件_【直播】基于Python开发ArcGIS插件:Python Add-in丨城市数据派

    原标题:[直播]基于Python开发ArcGIS插件:Python Add-in丨城市数据派 Add-in是什么? Add-in(加载项)是一种自定义项(例如工具栏上的工具集合),Add-in可以插入 ...

  2. ArcGis国土空间”一张图”填报操作技巧(四)零编程基础批量添加字段并设置字段属性

    向表或要素类表.要素图层和/或带属性表的栅格添加字段并设置字段属性,是我们在数据建库或处理时常常要用到的操作,实现的方法非常多. 一.逐一添加字段的常见操作 1.打开属性表--添加字段. 2.使用字段 ...

  3. 【arcgis批量添加字段】

    arcgis批量添加字段 模型展示 一.添加数据或工具,选中文件夹. 二.添加迭代器,迭代栅格. 三.选择添加字段工具,拖进模型建构器里 四.使用添加字段工具 五.运行即可 模型展示 一.添加数据或工 ...

  4. Mysql表批量添加字段

    在 MySQL 中,可以使用 ALTER TABLE 语句来添加表字段.以下是一些示例代码,可以批量添加多个字段: 1 mysql表批量添加字段 1.1 添加单个字段 ALTER TABLE `tab ...

  5. PowerDesigner 批量添加字段

    PowerDesigner:16 文章目录 简介 脚本 执行添加 简介 PowerDesigner 通过脚本对表模型批量添加字段 脚本 Option ExplicitDim mdl ' the cur ...

  6. python编写arcgis脚本教程_面向ArcGIS的Python脚本编程

    前言 1 鸣谢 3 第一部分 Python和地理处理的相关概念 4 第1章 Python简介 4 1.1 引言 4 1.2 Python的特点 4 1.3 脚本语言和程序语言 4 1.4 ArcGIS ...

  7. python编写代码_用 Python 编写干净、可测试、高质量的代码

    用 Python 编写干净.可测试.高质量的代码 Noah Gift 2010 年 12 月 20 日发布 简介 编写软件是人所承担的最复杂的任务之一.AWK 编程语言和 "K and R ...

  8. python编写登录_通过Python编写一个简单登录功能过程解析

    通过Python编写一个简单登录功能过程解析 需求: 写一个登录的程序, 1.最多登陆失败3次 2.登录成功,提示欢迎xx登录,今天的日期是xxx,程序结束 3.要检验输入是否为空,账号和密码不能为空 ...

  9. python编写poc_分享使用python编写poc,exp的实例教程

    在很久很久以,我有一个梦想 但是,后来我发现我的梦想渐渐没有了 于是,昨天我思考了一晚上 觉得我应该有个梦想的! 好了,回到正题.正所谓明人不装暗逼,今天我家开通了公网ip我开森啊,很开森的那种! 额 ...

最新文章

  1. python中文名字叫什么-Python为什么取名为Python,很少人知道
  2. 关于Matlab中符号运算的因式分解、展开与合并
  3. linux显卡驱动版本最好,Linux 用户如何安装 Nvidia 331.67 显卡驱动稳定版本
  4. PrimeFaces 5.0 DataTable列切换器
  5. 好中的图像处理方面的期刊_约会中,注意这四个方面,帮助你把握好自己的真爱...
  6. 提高篇 第五部分 动态规划 第2章 树型动态规划
  7. filter导致跨域失效_Quarkus中过滤器filter和跨域cors问题(4)
  8. 高通骁龙712移动平台正式发布!整体性能提升10%
  9. 用photoshop制作草莓
  10. python可视化利器Yellowbrick实践
  11. can总线一帧多少字节多少位_一条CAN报文到底有多少位?-汽车电子-与非网
  12. matlab2010 mex,怎样在Matlab2010a中使用VS2010的mex
  13. QQ坦白说闹得我差点分手,破解揪元凶证清白
  14. 冬奥探秘:那些隐匿在冬奥中的“绿科技”
  15. Hbase shell练习
  16. 新浪微博下拉菜单制作(DOM小练习)
  17. mysql 开启 thread pool_MySQL線程池(THREAD POOL)的處理
  18. 病毒乱花迷人眼,勿把“VX”当“全信”
  19. 机器学习:样本权重的理解
  20. @Autowired注解详解

热门文章

  1. huffman算法c语言程序,哈夫曼算法构造代码
  2. android自定义工具栏,Android工具栏中的自定义图标
  3. linux Kernel Map
  4. python3.6和2.7的区别_Python2.7与3.6的一些区别
  5. 后序遍历的非递归算法python_Python非递归实现二叉树的后续遍历
  6. Java中判断字符串是否为数字
  7. 因 Cannot resolve com.lowagie:itext:2.1.7.js6,选择手动安装 Jar 包进 Maven 仓库
  8. Springboot+多线程+等待获取执行结果
  9. 使用Builder模式创建复杂可选参数对象
  10. Python: ord()函数