Geographic Information Systems Asked by AlexS1 on November 7, 2020
I’m trying to extract a list of unique values in two fields in a shapefile. I think I am misunderstanding how the search cursor works, because I get the same error on which ever variable (x or y) I put second.
I’m following the answer here, and it works for just one field, but not 2+
Code:
with arcpy.da.SearchCursor(myshp, ['myid', 'myname']) as cursor:
x = sorted({row[0] for row in cursor})
y = sorted({row[1] for row in cursor})
Error:
y = sorted({row[1] for row in cursor})
IndexError: list index out of range
You can use a generator expression for this. For example:
import arcpy
fc = r'C:pathtogeodatabase.gdbfeatureclass'
unique_list1 = set(row[0] for row in arcpy.da.SearchCursor(fc, 'myid'))
unique_list2 = set(row[0] for row in arcpy.da.SearchCursor(fc, 'myname'))
Correct answer by Aaron on November 7, 2020
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP