①素材:分县土地利用矢量文件,保存在E:/工作/2024/5月 补录数据/data/sample.gdb文件地理数据库
文件夹示意:
shp文件属性表示意:
②目标:将文件数据库中的多个土地利用shp文件,按属性选择每个shp文件中字段“TDLYDM=53”,输出至"C:/Users/Administrator/Desktop/rwtb/"文件夹,命名与原土地利用文件名一致。
③成果示意:
![](https://img-blog.csdnimg.cn/direct/cc3a04037a104deb8bfb01b179b11e7e.png)
# -*- coding: utf-8 -*-
import arcpy
import os
import sys
arcpy.env.workspace = "E:/工作/2024/5月 补录数据/data/sample.gdb" # Set environment settings,最好在gdb里
output_folder = "C:/Users/Administrator/Desktop/rwtb/"# 输出的shp文件路径文件夹
i = 0
shpList = arcpy.ListFeatureClasses()
for shp in shpList:
name_total = shp.split("/")[-1]
name = name_total.split(".")[0]
arcpy.MakeFeatureLayer_management(shpList[i],"lyr") #创建要素图层
arcpy.SelectLayerByAttribute_management("lyr", "NEW_SELECTION", " TDLYDM = 53 ") #“lyr”要素图层;selection_type:选择类型,默认值为"NEW_SELECTION";where_clause 参数指定选择条件,使用的是 SQL 查询语句。
output_path = os.path.join(output_folder, name) #输出路径,仍以原土地利用shp文件名命名
arcpy.CopyFeatures_management("lyr", output_path) #保存选择结果
arcpy.Delete_management("lyr") #删除已创建的要素图层,避免已创建图层影响下一个shp创建图层
i = i+1