我在ArcGIS中編寫了一個python腳本,用於選擇相交的功能。它需要不斷重複,直到選擇了所有相關功能。此時選擇將停止改變。是否可以設置一個循環來保持重複,直到所選功能的數量與最後一次循環的時間相同爲止?我可以使用arcpy.GetCount_management()
方法獲得選定的功能。我可以設置python while循環來運行,直到沒有任何更改?
我給自己定的選擇要素的數量是一個變量:
selectCount = arcpy.GetCount_management("StreamT_StreamO1")
那麼這是
mylist = []
with arcpy.da.SearchCursor("antiRivStart","ORIG_FID") as mycursor:
for feat in mycursor:
mylist.append(feat[0])
liststring = str(mylist)
queryIn1 = liststring.replace('[','(')
queryIn2 = queryIn1.replace(']',')')
arcpy.SelectLayerByAttribute_management('StreamT_StreamO1',"ADD_TO_SELECTION",'OBJECTID IN '+ queryIn2)
arcpy.SelectLayerByLocation_management("antiRivStart","INTERSECT","StreamT_StreamO1","","ADD_TO_SELECTION")
所以我想要做的實際上將:
while selectcount == previousselectcount:
do stuff
但我不知道while循環應該如何構造