title: What is the logic of reverse indexed slices in Python?
body: <p>Reverse indexing in python with the <code>x[::-1]</code> format is very handy, but what is the logic of reversed indexing on <em>slices</em>?  I understand that the idea is <code>[high:low:-stride]</code>, but I find the following example confusing.  In particular, why is it not possible to slice so that the entire iterable is reversed (without using the implicit <code>[high::-1]</code> format)?</p>
  
  <p>This Python 3.6 snippet:</p>
  
  <pre><code>s = 'abcde'
  for i in reversed(range(0,6)):
      print(i, f'{s[6:(i - 1):-1]:&gt;6}', f'{s[:i]:6}')
  </code></pre>
  
  <p>Returns:</p>
  
  <pre><code>5        abcde
  4      e abcd
  3     ed abc
  2    edc ab
  1   edcb a
  0
  </code></pre>
  
  <p>Concretely, why isn't the 0 line <code>edcba</code>?</p>