อีกวิธีหนึ่งในการค้นหาคลาสคุณลักษณะซึ่งอาจหรืออาจไม่อยู่ในชุดข้อมูลคือการใช้walkฟังก์ชันดังกล่าวก่อนหน้านี้ มันต้องการเพียงพื้นที่ทำงานในการค้นหา (เช่นโฟลเดอร์ที่มี GDB หลายร้อยรายการ)
import arcpy, os
workspace = "Path/to/folder"
search = "name_string_you_are_searching_for"
feature_classes = []
for dirpath, dirnames, filenames in arcpy.da.Walk(workspace,
datatype="FeatureClass",
type="ANY"):
for fname in filenames:
# search for string in string to eliminate the need for exact filenames
if search.upper() in fname.upper():
feature_classes.append(os.path.join(dirpath, fname))
รายการผลลัพธ์จะมีเส้นทางและชื่อไฟล์ของคลาสคุณลักษณะทั้งหมดที่ตรงกับเกณฑ์การค้นหาของคุณซึ่งสามารถพิมพ์ได้
for fc in feature_classes:
print fc
walkฟังก์ชั่นนอกจากนี้ยังสามารถปรับเปลี่ยนเพื่อค้นหาประเภทที่เฉพาะเจาะจงของคุณลักษณะ (เช่นรูปหลายเหลี่ยมจุดเชิงภาพ ฯลฯ ) โดยการเปลี่ยนtype=""ประเภทคุณลักษณะ