title: Why does indexing a nonexistent dimension in a numpy array not throw an error?
body: <p>Code:</p>
  <pre><code>aaa = np.array([1,7,3])
  print('shape of aaa:', aaa.shape)
  print(aaa[:1])
  </code></pre>
  <p>Result:</p>
  <pre><code>shape of aaa: (3,)
  [1]
  </code></pre>
  <p>Why does this work at all? Shouldn't it throw some kind of error about indexing a dimension that doesn't exist? Also, why is the result 1, and why is the result an array?</p>
  <p>Thanks so much for the help!!</p>