title: Is there any difference between `range(n, -1, -1)` and `reversed(range(0, n+1))`?
body: <p>They produce the same results.</p>
  
  <pre><code>&gt;&gt;&gt; for i in range(10, -1, -1):
  ...     print(i)
  ... 
  10
  9
  8
  7
  6
  5
  4
  3
  2
  1
  0
  </code></pre>
  
  <p>contrasted with:</p>
  
  <pre><code>&gt;&gt;&gt; for i in reversed(range(0, 10 + 1):
  ...     print(i)
  ... 
  10
  9
  8
  7
  6
  5
  4
  3
  2
  1
  0
  </code></pre>
  
  <p>From what I understand, Python3's <code>range</code> creates a generator rather than storing the whole range in memory. <code>reversed</code> likewise generates its values one at a time, I think. Is there any reason to use one over the other?</p>