<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Looping Through FeatureClasses in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25306#M1906</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi BB,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is an example on how to do this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import arcpy
from arcpy import env
env.workspace = r"C:\temp\python\test.gdb"
env.overwriteOutput = 1

# create list of editors
people = ["TOM", "ADAM", "BRIAN", "STEVE"]

# specify fields to use with search cursor
fields = ["PERSON", "updated_date"]

# loop through each feature class in test.gdb
lstfc = arcpy.ListFeatureclasses("*")
for fc in lstfc:
&amp;nbsp;&amp;nbsp;&amp;nbsp; # loop through each editor for each feature class
&amp;nbsp;&amp;nbsp;&amp;nbsp; for editor in people:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # create an empty list
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list = []
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # create a feature layer for each editor
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.MakeFeatureLayer_management(fc, "fc_lyr", "PERSON = '" + editor + "'")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #sort feature layer by updated_date and iterate through each row
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for row in arcpy.da.SearchCursor("fc_lyr", fields, sql_clause=(None, 'ORDER BY updated_date')):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # append each date to the list
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list.append(row[1])
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print editor + " has last updated on" + str(list[-1]) &lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 10 Dec 2021 21:01:36 GMT</pubDate>
    <dc:creator>JakeSkinner</dc:creator>
    <dc:date>2021-12-10T21:01:36Z</dc:date>
    <item>
      <title>Looping Through FeatureClasses</title>
      <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25305#M1905</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am trying to build a script that will iterate through each feature class while capturing the last record per the required query. I haven't had a chance to really test this out yet. Just seems like I might be able to streamline the code a bit...any feedback is welcome.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;# List People and Feature Classes
people = ['TOM','ADAM','BRIAN','STEVE']
lstfc = arcpy.ListFeatureclasses(workspace)
for fc in lstfc: 
&amp;nbsp; #Loop through each feature class printing the last record date that was updated by each person
&amp;nbsp; lstTOM = [row.getvalue('updated_date') for row in arcpy.SearchCursor(fc,"PERSON='TOM')
&amp;nbsp; print str(people[0]) + "has" + " last" + "updated" + "on" + str(lstTOM[-1])
&amp;nbsp; lstADAM = [row.getvalue('updated_date') for row in arcpy.SearchCursor(fc,"PERSON='ADAM')
&amp;nbsp; print str(people[1]) + "has" + " last" + "updated" + "on" + str(lstADAM[-1])
&amp;nbsp; lstBRIAN = [row.getvalue('updated_date') for row in arcpy.SearchCursor(fc,"PERSON='BRIAN')
&amp;nbsp; print str(people[2]) + "has" + " last" + "updated" + "on" + str(lstBRIAN[-1])
&amp;nbsp; lstSTEVE = [row.getvalue('updated_date') for row in arcpy.SearchCursor(fc,"PERSON='STEVE')
&amp;nbsp; print str(people[3]) + "has" + " last" + "updated" + "on" + str(lstSTEVE[-1])
&amp;nbsp; &lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Mar 2014 09:02:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25305#M1905</guid>
      <dc:creator>benberman</dc:creator>
      <dc:date>2014-03-25T09:02:29Z</dc:date>
    </item>
    <item>
      <title>Re: Looping Through FeatureClasses</title>
      <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25306#M1906</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi BB,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is an example on how to do this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import arcpy
from arcpy import env
env.workspace = r"C:\temp\python\test.gdb"
env.overwriteOutput = 1

# create list of editors
people = ["TOM", "ADAM", "BRIAN", "STEVE"]

# specify fields to use with search cursor
fields = ["PERSON", "updated_date"]

# loop through each feature class in test.gdb
lstfc = arcpy.ListFeatureclasses("*")
for fc in lstfc:
&amp;nbsp;&amp;nbsp;&amp;nbsp; # loop through each editor for each feature class
&amp;nbsp;&amp;nbsp;&amp;nbsp; for editor in people:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # create an empty list
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list = []
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # create a feature layer for each editor
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.MakeFeatureLayer_management(fc, "fc_lyr", "PERSON = '" + editor + "'")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #sort feature layer by updated_date and iterate through each row
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for row in arcpy.da.SearchCursor("fc_lyr", fields, sql_clause=(None, 'ORDER BY updated_date')):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # append each date to the list
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list.append(row[1])
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print editor + " has last updated on" + str(list[-1]) &lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 21:01:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25306#M1906</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2021-12-10T21:01:36Z</dc:date>
    </item>
    <item>
      <title>Re: Looping Through FeatureClasses</title>
      <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25307#M1907</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Hi BB,&lt;BR /&gt;&lt;BR /&gt;Here is an example on how to do this:&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import arcpy
from arcpy import env
env.workspace = r"C:\temp\python\test.gdb"
env.overwriteOutput = 1

people = ["TOM", "ADAM", "BRIAN", "STEVE"]

fields = ["PERSON", "updated_date"]

lstfc = arcpy.ListFeatureclasses("*")
for fc in lstfc:
&amp;nbsp;&amp;nbsp;&amp;nbsp; for editor in people:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list = []
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.MakeTableView_management(fc, "fc_lyr", "PERSON = '" + editor + "'")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #sort by updated_date
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for row in arcpy.da.SearchCursor("fc_lyr", fields, sql_clause=(None, 'ORDER BY updated_date')):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list.append(row[1])
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print editor + " has last updated on" + str(list[-1]) &lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi Jake, would you kindly comment your code?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 21:01:39 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25307#M1907</guid>
      <dc:creator>benberman</dc:creator>
      <dc:date>2021-12-10T21:01:39Z</dc:date>
    </item>
    <item>
      <title>Re: Looping Through FeatureClasses</title>
      <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25308#M1908</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I went ahead and added some comments to the code snippet.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Mar 2014 12:20:01 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25308#M1908</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2014-03-25T12:20:01Z</dc:date>
    </item>
    <item>
      <title>Re: Looping Through FeatureClasses</title>
      <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25309#M1909</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;thanks. Is there an alternative without creating a table view? This script is intended to be run on a dynamic database.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Mar 2014 12:24:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25309#M1909</guid>
      <dc:creator>benberman</dc:creator>
      <dc:date>2014-03-25T12:24:40Z</dc:date>
    </item>
    <item>
      <title>Re: Looping Through FeatureClasses</title>
      <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25310#M1910</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I meant to update that as well.&amp;nbsp; On the test I performed, I was using a table.&amp;nbsp; You can use the Make Feature Layer function to do this on a feature class.&amp;nbsp; Ex:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_macro_code jive_text_macro"&gt;arcpy.MakeFeatureLayer_management(fc, "fc_lyr", "PERSON = '" + editor + "'")&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Mar 2014 12:59:30 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25310#M1910</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2014-03-25T12:59:30Z</dc:date>
    </item>
    <item>
      <title>Re: Looping Through FeatureClasses</title>
      <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25311#M1911</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Question also..why is row[1] only being appended to the listed? Should it be something like list.append(row) ?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Mar 2014 13:29:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25311#M1911</guid>
      <dc:creator>benberman</dc:creator>
      <dc:date>2014-03-25T13:29:58Z</dc:date>
    </item>
    <item>
      <title>Re: Looping Through FeatureClasses</title>
      <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25312#M1912</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;With the da cursors, the row variable represents each field specified in the 'fields' list.&amp;nbsp; So, row[0] represents the 'PERSON' field, row[1] represents the 'updated_date' field.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Mar 2014 14:07:02 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25312#M1912</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2014-03-25T14:07:02Z</dc:date>
    </item>
    <item>
      <title>Re: Looping Through FeatureClasses</title>
      <link>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25313#M1913</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am attempting the code below to nest and iterate each item in the state list into the SQL query in the SearchCursor. It seems that I am over the list index at some point? The compiler passed the syntax. Please offer feedback.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;arcpy.env.workspace = workspace
... lstfc = sorted(arcpy.ListFeatureClasses())
... states = ['AK','AZ','CA','CO','ES','ID','MT','NM','NV','OR','UT','WY']
... for fc in lstfc:
...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for item in states:
...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lstnew1 = [row.getValue("created_date") for row in arcpy.SearchCursor(fc,"ADMIN_ST='item'","",fields="ADMIN_ST;created_date",sort_fields="created_date D")]
...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print item+" "+ "last updated" +" "+ fc + " "+ "on" + " " + str(lstnew1[0]) +'\n'+'\n'&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Runtime error &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Traceback (most recent call last):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; File "&amp;lt;string&amp;gt;", line 7, in &amp;lt;module&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;IndexError: list index out of range&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 21:01:42 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/looping-through-featureclasses/m-p/25313#M1913</guid>
      <dc:creator>benberman</dc:creator>
      <dc:date>2021-12-10T21:01:42Z</dc:date>
    </item>
  </channel>
</rss>

