按筛选条件值进行自动删除的arcgis10.2.2工具箱python2.7的脚本代码
时间: 2024-01-21 08:19:46 浏览: 105
以下是一个在ArcGIS 10.2.2中使用Python 2.7编写的工具箱脚本,用于按条件值自动删除要素:
```python
import arcpy
# 设置输入参数
input_features = arcpy.GetParameterAsText(0)
field = arcpy.GetParameterAsText(1)
operator = arcpy.GetParameterAsText(2)
value = arcpy.GetParameterAsText(3)
# 构建查询语句
query = "{} {} '{}'".format(arcpy.AddFieldDelimiters(input_features, field), operator, value)
# 使用删除工具删除满足条件的要素
arcpy.DeleteFeatures_management(input_features, query)
```
在工具箱中,添加四个参数:要素图层、字段名、操作符和条件值。例如,如果您要删除“population”字段中值大于100的所有要素,您可以设置字段名为“population”,操作符为“>”,条件值为“100”。
此代码使用ArcPy中的DeleteFeatures工具来删除满足条件的要素。它构建了一个查询语句,然后将其传递给DeleteFeatures工具。
相关问题
arcgis10.2.2工具箱python2.7脚本代码一键删除所有字段
以下是可以实现一键删除所有字段的Python脚本代码:
```python
import arcpy
# 输入要删除字段的表格路径
fc = "path/to/your/feature/class"
# 获取所有字段的列表
fields = arcpy.ListFields(fc)
# 遍历列表,删除所有字段
for field in fields:
arcpy.DeleteField_management(fc, field.name)
print("所有字段已删除!")
```
你可以将以上代码保存为.py文件,然后在ArcMap中打开Python窗口,运行该脚本即可删除指定要素类的所有字段。
按查询条件值进行自动删除查询条件值图斑的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中将其添加到工具箱中,并设置参数即可使用。
阅读全文