arcpy.da‘s cursors return rows as lists, you can easily transform these on-the-fly with just a little code on your part:
Or if you’d like to be able to use a syntax similar to the old
arcpy cursors and do
row.COLUMN_NAME to fetch a value, you could use
And then to get a little more sophisticated, what about an update cursor that lets you use dictionaries? Note that in this example the row will ALWAYS update without any intervention on your part once you go to the next one, so be careful:
All the pieces are there in the Python standard library and
arcpy.da to customize how you get your data in and out. The reason that
arcpy.da returns lists and tuples is because they act as a sort of lowest-common-denominator of data structures, and in large datasets things like a dictionary key lookup benchmarks much, much slower than a simple list item assignment.