免费视频|新人指南|投诉删帖|广告合作|地信网APP下载

查看: 1162|回复: 3
收起左侧

[求助] arcgis字段值等于图层名称怎么处理

[复制链接]

2

主题

1895

铜板

1

好友

助理工程师

Rank: 5Rank: 5

积分
115
发表于 2023-8-26 23:38 | 显示全部楼层 |阅读模式
如题,如何将shp图层名称赋值到shp的指定字段当中?

113

主题

1万

铜板

174

好友

地信贵宾

Rank: 13Rank: 13Rank: 13Rank: 13

积分
39146

精华勋章宣传勋章爱心勋章组织勋章优秀斑主地信元老灌水勋章荣誉会员勋章活跃勋章官方团队地信专家组VIP勋章贡献勋章名人堂勋章成就学员勋章

发表于 2023-8-28 09:24 | 显示全部楼层
这个没有专门的工具,需要写脚本来实现。这个需求还是很有用的。参考一下:
  1. import arcpy

  2. # 设置工作空间
  3. arcpy.env.workspace = r"C:\path\to\your\workspace"

  4. # 定义shp图层路径
  5. shp_path = r"C:\path\to\your\shapefile.shp"

  6. # 定义要赋值的字段名称
  7. field_name = "FieldName"

  8. # 获取shp图层名称
  9. layer_name = arcpy.Describe(shp_path).name

  10. # 打开编辑会话
  11. edit = arcpy.da.Editor(arcpy.env.workspace)
  12. edit.startEditing(False, True)
  13. edit.startOperation()

  14. # 更新字段值
  15. with arcpy.da.UpdateCursor(shp_path, field_name) as cursor:
  16.     for row in cursor:
  17.         row[0] = layer_name
  18.         cursor.updateRow(row)

  19. # 结束编辑会话
  20. edit.stopOperation()
  21. edit.stopEditing(True)
复制代码
回复 支持 反对

使用道具 举报

1

主题

798

铜板

2

好友

技术员

Rank: 3Rank: 3

积分
46
发表于 2023-8-28 17:18 | 显示全部楼层
使用ArcGIS Model Builder就行了,查看附件图片
111.png
回复 支持 反对

使用道具 举报

0

主题

1万

铜板

8

好友

地信院士

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

积分
2516
发表于 2023-9-3 11:36 | 显示全部楼层
来学习学习,查漏补缺
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
快速回复 返回顶部 返回列表