Why does Python return negative list indexes?
<p>If I have this list with 10 elements:</p>

<pre><code>&gt;&gt;&gt; l = [1,2,3,4,5,6,7,8,9,0]
</code></pre>

<p>Why will l[10] return an IndexError, but l[-1] returns 0?</p>

<pre><code>&gt;&gt;&gt; l[10]
Traceback (most recent call last):
  File "&lt;stdin&gt;", line 1, in &lt;module&gt;
IndexError: list index out of range
&gt;&gt;&gt; l[0]
1
&gt;&gt;&gt; l[-1]
0
&gt;&gt;&gt; l[-2]
9
</code></pre>

<p>What I want to do is throw an error if there are no previous elements in the list.</p>
