按筛选条件值进行自动删除的arcgis10.2.2工具箱python2.7的脚本代码
时间: 2024-01-21 13:19:59 浏览: 78
以下是一个简单的 ArcGIS 工具箱脚本,可以按照筛选条件自动删除要素。请注意,该脚本仅适用于 ArcGIS 10.2.2,且需要 Python 2.7。
```python
# 导入必要的模块
import arcpy
# 定义要素类和筛选条件
feature_class = arcpy.GetParameterAsText(0)
query = arcpy.GetParameterAsText(1)
# 构建查询语句
expression = arcpy.AddFieldDelimiters(feature_class, "FIELD_NAME") + " = " + query
# 使用 arcpy.da.UpdateCursor 删除要素
with arcpy.da.UpdateCursor(feature_class, "*", where_clause=expression) as cursor:
for row in cursor:
cursor.deleteRow()
# 完成操作并清理内存
del cursor
```
请注意,此脚本中的 `FIELD_NAME` 必须替换为要应用筛选条件的字段的名称。使用此脚本时,请务必小心,以免不小心删除错误的要素!
相关问题
按筛选条件值进行自动删除筛选图斑的arcgis10.2.2工具箱python2.7的脚本代码
以下是按筛选条件值进行自动删除筛选图斑的 ArcGIS 10.2.2 工具箱 Python 2.7 的脚本代码示例:
```python
# 导入模块
import arcpy
# 设置工作空间
arcpy.env.workspace = "C:/data"
# 定义要素类
fc = "myfeatureclass.shp"
# 定义筛选条件
where_clause = "POPULATION < 1000"
# 创建游标
with arcpy.da.UpdateCursor(fc, ["POPULATION"], where_clause) as cursor:
for row in cursor:
# 删除符合条件的要素
cursor.deleteRow()
# 输出信息
print("已删除符合条件的图斑。")
```
在这个示例中,我们使用 arcpy.da.UpdateCursor() 创建一个游标来遍历要素类中符合给定条件的要素。然后,我们使用游标的 deleteRow() 方法删除这些要素。最后,我们输出一条消息来确认已删除符合条件的图斑。
按查询条件值进行自动删除查询条件值图斑的arcgis10.2.2工具箱python2.7的脚本代码
以下是一个示例脚本,可以根据输入的查询条件值自动删除相应的图斑:
```python
import arcpy
# 输入参数
fc = arcpy.GetParameterAsText(0) # 要素类
field = arcpy.GetParameterAsText(1) # 查询字段
value = arcpy.GetParameterAsText(2) # 查询条件值
# 构建查询语句
query = "{} = '{}'".format(arcpy.AddFieldDelimiters(fc, field), value)
# 删除符合条件的要素
with arcpy.da.UpdateCursor(fc, ["OID@", field], where_clause=query) as cursor:
for row in cursor:
cursor.deleteRow()
arcpy.AddMessage("Deleted OID {} with {} = {}".format(row[0], field, value))
```
将以上代码保存为.py文件后,可以在ArcMap中将其添加到工具箱中,并设置参数即可使用。
阅读全文