title: Python is slow when iterating over a large list
body: <p>I am currently selecting a large list of rows from a database using pyodbc.  The result is then copied to a large list, and then i am trying to iterate over the list.  Before I abandon python, and try to create this in C#, I wanted to know if there was something I was doing wrong.</p>
  
  <pre><code>clientItems.execute("Select ids from largetable where year =?", year);
  allIDRows = clientItemsCursor.fetchall() #takes maybe 8 seconds.
  
  for clientItemrow in allIDRows:
      aID = str(clientItemRow[0])
      # Do something with str -- Removed because I was trying to determine what was slow
      count = count+1
  </code></pre>
  
  <p>Some more information:</p>
  
  <ul>
  <li>The for loop is currently running at about 5 loops per second, and that seems insanely slow to me.  </li>
  <li>The total rows selected is ~489,000.</li>
  <li>The machine its running on has lots of RAM and CPU.  It seems to only run one or two cores, and ram is 1.72GB of 4gb.</li>
  </ul>
  
  <p>Can anyone tell me whats wrong?  Do scripts just run this slow?</p>
  
  <p>Thanks</p>