Python corte reverso de passada

Um exemplo específico da minha pergunta é: "Como posso obter '3210' neste exemplo?&quo


>>> foo = '0123456'
>>> foo[0:4]
'0123'
>>> foo[::-1]
'6543210'
>>> foo[4:0:-1] # I was shooting for '3210' but made a fencepost error, that's fine, but...
'4321'
>>> foo[3:-1:-1] # How can I get '3210'?
''
>>> foo[3:0:-1]
'321'

Parece estranho que eu possa escrever foo [4: 0: -1], foo [5: 1: -1] etc. e obter o que eu esperava, mas não há como escrever a fatia para que eu consiga ' 3210 '.

Uma maneira improvisada de fazer isso seria foo [0: 4] [:: - 1], mas isso cria dois objetos de string no processo. Eu executarei essa operação literalmente bilhões de vezes, portanto, toda operação de cadeia é car

Deve estar faltando algo bobo e fácil. Obrigado pela ajuda

questionAnswers(8)

yourAnswerToTheQuestion