[::-1] em Python com exemplos

⚡ Resumo Inteligente

[::-1] em Python É uma expressão de fatiamento poderosa que inverte qualquer tipo de sequência. LessAs aulas abordam os fundamentos da indexação, parâmetros de fatiamento, a diferença entre a[-1] e a[::-1], inversão de listas e exemplos práticos.

  • 🔁 Reverse Fatia: [::-1] usa início vazio, parada vazia, passo -1.
  • 📍 Indexação: Os índices positivos começam em zero; os negativos começam no final.
  • 🆚 [-1] vs [::-1]: [-1] retorna o último elemento; [::-1] retorna toda a sequência invertida.
  • 📋 Listas e Cadeias de Caracteres: Funciona com qualquer iterável indexado, incluindo listas, strings, tuplas e bytes.
  • Rápido e idiomático: Implementado em C, muito mais rápido que Python rotações.
  • 🤖 Auxílio de IA para trechos de código: As ferramentas de IA explicam os parâmetros de fatiamento e convertem loops em fatias.

Python Fatia Reverse

O que é [::-1] em Python?

Python tem muitas sintaxes e aplicações diferentes quando se trata de utilizar 1. Pode ser representado como [-1], ou também pode ser descrito como [::-1].

Os colchetes na notação acima geralmente especificam mais de um item na lista. Ao usar colchetes, especifica-se vários itens ou um único item na lista.

Sempre que um programador define [::-1], isso sugere que o programa deve percorrer do início ao fim em uma determinada lista. Você pode fazer indexação em python, o que ajuda a dividir uma sequência iterável, como uma lista ou string.

Qual é o tipo de [::-1] em Python?

Existem duas maneiras de representar 1 em python conforme descrito abaixo: –

  • Ele pode ser representado por um colchete simples sem dois pontos e outro método com sintaxe de dois pontos duplos.
  • Uma sequência iterável, como uma lista ou string, pode ser analisada no nível do item usando colchetes [].
  • Dentro dos colchetes [], é necessário fornecer índices diferentes.

A seguir está a sintaxe da lista conforme mostrado abaixo: –

Sintaxe: –

SEQUENCE [START: STOP: STEP]

A sintaxe acima é uma representação geral. A sintaxe para colchetes sem dois pontos é representada da seguinte forma:

Sintaxe: –

SEQUENCE [-1]

A sintaxe para colchetes com dois pontos é representada da seguinte forma:

Sintaxe: –

SEQUENCE[::-1]

Explicação: –

  • O parâmetro start representa o número do índice inicial.
  • O parâmetro stop representa o número final ou último índice.
  • A etapa do parâmetro é um parâmetro opcional que fornece um incremento para uma seleção. Na sintaxe, a contagem de etapas é inicializada como -1.
  • Uma sequência pode ser uma string, lista ou dicionário na sintaxe acima.

Diferença entre a[-1] e a[::-1] em Python

Um [-1] é usado para índices negativos e ajuda a selecionar itens na ordem inversa em uma determinada lista. Significa o início da lista a partir do final da ordem inversa. Aqui, [-1] significa o primeiro item da última posição. A seguir está um exemplo que explica o uso de A[-1]

Exemplo: -

Python Code:

b= [7,4,5,6]
print ("The list is", b)
print (" The last element in the list is", b [-1])

Saída:

The list is [7, 4, 5, 6]
The last element in the list is 6

A[::-1] e A[-1] parecem semelhantes em termos de execução, mas são diferentes em termos de sintaxe. A primeira sintaxe possui três parâmetros, enquanto a última sintaxe possui apenas um único parâmetro.

Os dois primeiros parâmetros presentes em A[::-1] representam o início e o fim de uma lista. Se os parâmetros start e stop forem omitidos, todos os itens da lista serão retornados.

Este último parâmetro mostra a saída na ordem inversa. Este parâmetro é opcional.

A seguir está um exemplo que explica o uso de A[::-1]

Exemplo: -

Python Code:

b= [7,4,5,6]
print ("The list is", b)
print (" The reversed list as determined is", b [::-1])

Saída:

The list is [7, 4, 5, 6]
The reversed list as determined is [6, 5, 4, 7]

Explicação:

O referido Python o código não produz os mesmos resultados para a lista criada. Em vez disso, ele fornece uma lista reversa para a lista base fornecida como o valor de entrada.

A diferença acima depende de Pythonregras de indexação.

Como realizar a indexação em Python?

Para acessar um item em uma lista python iterável, é necessário realizar a indexação na lista ou utilizar um índice aplicado com a posição do item presente na lista.

Python executa indexação baseada em zero para listas. No caso de indexação baseada em zero, o primeiro item da lista é atribuído como posição 0.

Vamos dar um exemplo e tentar acessar o início e o segundo item em uma lista python.

Exemplo: -

Python Code:

b= [7,4,5,6]
print ("The list is", b)
print (" The reverse ordered list as determined is", b [::-1])
print (" The second item found in list is", b [1])
print (" The first or beginning item in the list is", b [0])

Saída:

The list is [7, 4, 5, 6]
The reverse ordered list as determined is [6, 5, 4, 7]
The second found item in the list is 4
The first or beginning item in the list is 7

Explicação:

Conforme visto no código acima, para acessar o primeiro elemento da lista, foi aplicado 0 como índice dentro do quadrado do tipo lista. Da mesma forma, 1 foi aplicado como índice dentro do quadrado do tipo de lista para acessar o segundo elemento da lista. A indexação da lista também pode ser aplicada a dicionários, strings e tuplas.

Tomemos um exemplo da indexação de tipo de string em python.

Exemplo:

Python Code:

b= "GURU99"
print ("The list is", b)
print (" The reverse ordered list as determined is", b [::-1])
print (" The second item found in list is", b [1])
print (" The first or beginning item in the list is", b [0])

Saída:

The list is GURU99
The reverse ordered list as determined is 99URUG
The second item found in the list is U
The first or beginning item in the list is G

Explicação:

Como visto acima, a saída compartilha o primeiro e o segundo elementos da string “GURU99”. Uma string tem que ser inicializada usando aspas duplas. Python também nos permite realizar indexação negativa de listas, strings ou dicionários iteráveis.

Ao fornecer um índice negativo, pode-se acessar o último e o penúltimo elemento da lista. Tomemos um exemplo de indexação negativa de uma string, conforme mostrado abaixo.

Exemplo: -

Python Code:

b= "GURU99"
print ("The list is", b)
print (" The reverse ordered list as determined is", b [::-1])
print (" The second item found in list is", b [-2])
print (" The first or beginning item in the list is", b [-1])

Saída:

The list is GURU99
The reverse ordered list as determined is 99URUG
The second item found in the list is 9
The first or beginning item in the list is 9

A indexação retorna um elemento; o fatiamento retorna um intervalo.

Papel de fatiar Python

Em palavras mais simples, uma fatia significa cortar algo. Ele permite dividir uma lista em python.

Aqui, como o fatiamento é importante em Python:

  • Ele permite acesso a elementos específicos de uma lista iterável ou string.
  • Também ajuda a excluir e modificar a string ou uma lista.
  • Faz com que a sequência iterável seja concisa e legível.
  • Ele nos permite acessar vários itens em comparação com um único elemento sob o conceito de indexação.
  • Ele utiliza índices para adquirir intervalos de itens específicos na sequência iterável.
  • Os índices em python são sempre baseados em zero, seja fatiando ou indexando em uma sequência iterável.

O fatiamento pode ser obtido de duas formas básicas.

  • A primeira forma é fornecer parâmetros de índice de início e parada de uma sequência. Ao fazer isso, a sequência retornaria todos os itens possíveis entre o início da sequência e o término [end -1] da sequência.
  • O segundo método é fornecer os parâmetros de índice de início e parada da sequência junto com a etapa. Uma etapa permite a devolução de itens específicos ou selecionados dentro de um intervalo de itens entre o início e o fim.

A seguir está a sintaxe para a primeira forma de fatiamento: –

Sintaxe:

SEQUENCE [START: STOP]

A seguir está a sintaxe para a segunda forma de fatiamento: –

Sintaxe:

SEQUENCE [START: STOP: STEP]

Tomemos o exemplo da primeira forma de fatiamento conforme mostrado abaixo.

Exemplo

Python Code:

b= "GURU99"
print ("The list is", b)
Substring=b[0:3]
print (" The substring in the list is", Substring)

Saída:

The list is GURU99
The substring in the list is GUR

Tomemos o exemplo da segunda forma de fatiamento, conforme mostrado abaixo.

Exemplo

Python Code:

b= "GURU99"
print ("The list is", b)
Substring=b[0:9:2]
print (" The substring in the list is", Substring)

Saída:

The list is GURU99
The substring in the list is GR9

Python também executa fatiamento negativo para uma sequência iterável. Ele permite acessar uma variedade de itens ou elementos do final da sequência.

Tomemos um exemplo para acessar os três últimos elementos da sequência mostrada abaixo.

Exemplo

Python Code:

b= "GURU99"
print ("The list is", b)
Substring=b[-5:-1]
print (" The substring in the list is", Substring)

Saída:

The list is GURU99
The substring in the list is URU9

Como reverter um Python lista usando [::-1] em Python?

O fatiamento negativo e a indexação negativa podem ser aplicados para reverter uma string ou lista em python. Tomemos uma string chamada “GURU99” para ilustrar um exemplo.

Exemplo

Python Code:

b= "GURU99"
print ("The list is", b)
Substring=b[::-1]
print (" The reverse of string GURU99 is", Substring)

Saída:

The list is GURU99
The substring in the list is 99URUG

Explicação:

Aqui, o código busca todos os elementos da string da última posição. Começa com -1 e busca todos os itens ou elementos da última posição. A linha de código acima diz ao python para recuar do último elemento e avançar para o primeiro elemento, o que resulta em uma lista reversa ou uma string.

Exemplo de [::-1] em Python

O fatiamento ou indexação podem ser empregados para extracuma lista menor a partir de uma lista maior. Da mesma forma, pode ser usado para extracuma substring de uma string maior.

Vamos usar um exemplo de como usar 1 em Python para extracuma lista menor de uma lista maior:

Exemplo

Python Code:

b = [1, 2, 3, 4, 5, 6, 7]
slist = b[1::]
print("the smaller list from larger list is:",slist)

Saída:

the smaller list from the larger list is: [2, 3, 4, 5, 6, 7]

Explicação:

No código acima, deixando o primeiro índice, python extracO Python itera sobre todos os elementos a partir da posição 2 da lista, criando uma lista menor. Isso ocorre porque o Python utiliza indexação a partir de zero ao atribuir índices às posições dos elementos listados.

Perguntas Frequentes

Trata-se de uma fatia sem início, sem fim e com incremento de -1. Ela retorna uma nova sequência com todos os elementos em ordem inversa.

Assistentes de IA como o Copilot e o ChatGPT explicam os parâmetros de início, parada e incremento, e convertem loops "for" verbosos em expressões de fatiamento concisas.

Sim. As ferramentas de IA recomendam list(reversed(seq)) quando a legibilidade supera a brevidade e explicam as compensações de tempo e memória de cada uma.

a[-1] retorna apenas o último elemento. a[::-1] retorna a sequência inteira invertida.

Sim. Funciona com qualquer tipo de sequência, incluindo listas, strings, tuplas, bytes e arrays de bytes. A sequência retornada mantém seu tipo original.

O fatiamento geralmente é mais rápido porque é executado em C e retorna um objeto completo. O método `reversed()` retorna um iterador preguiçoso que é mais eficiente em termos de memória, mas mais lento.

Não. O fatiamento retorna uma nova sequência. A lista, string ou tupla original permanece intacta. Use list.reverse() para inverter listas no mesmo local.

Sim. O NumPy suporta a mesma sintaxe de fatiamento, retornando uma visão invertida em vez de uma cópia. Use `.copy()` se precisar de um array independente.

Resuma esta postagem com: