title: Why is it slower to iterate over a small string than a small list?
body: <p>I was playing around with timeit and noticed that doing a simple list comprehension over a small string took longer than doing the same operation on a list of small single character strings. Any explanation? It's almost 1.35 times as much time.</p>
  
  <pre><code>&gt;&gt;&gt; from timeit import timeit
  &gt;&gt;&gt; timeit("[x for x in 'abc']")
  2.0691067844831528
  &gt;&gt;&gt; timeit("[x for x in ['a', 'b', 'c']]")
  1.5286479570345861
  </code></pre>
  
  <p>What's happening on a lower level that's causing this?</p>