title: Getting indices of ascending order of list
body: <p>I know that this question has been asked a hundred times, but the answer always seems to be "use numpy's argsort". But either I am misinterpreting what most people are asking, or the answers are not correct for the question. Whatever be the case, I wish to get indices of a list's ascending order. The phrasing is confusing, so as an example, given a list <code>[4, 2, 1, 3]</code> I expect to get a list back <code>[3, 1, 0, 2]</code>. The smallest item is <code>1</code>, so it gets index <code>0</code>, the largest one is <code>4</code> so it gets index <code>3</code>. It seems to me that <code>argsort</code> is often suggested, but it just doesn't seem to do that.</p>
  
  <pre><code>from numpy import argsort
  
  l = [4, 2, 1, 3]
  print(argsort(l))
  # [2, 1, 3, 0]
  # Expected [3, 1, 0, 2]
  </code></pre>
  
  <p>Clearly argsort is doing something else, so what is it actually doing and how is it similar to the expected behaviour so that it is so often (wrongly) suggested? And, more importantly, how can I get the desired output?</p>