Como inverter uma string em Python

Neste artigo você vai aprender a como inverter uma string em Python, de uma maneira simples para você utilizar em seus programas

Como inverter uma string em Python capa

Conteúdo também disponível em vídeo:

Fala programador(a), beleza? Bora aprender mais sobre strings em Python e também como inverter uma string

Para fazer a ação de inversão de texto em Python não precisamos nem de uma função

Utilizando a notação de slice já é possível

txt = "Inverter texto"[::-1]
print(txt) # otxet retrevnI

Basicamente estamos utilizando um slice no começo da string que se move de trás para frente

Formação Claude Code
Formação Recomendada

Formação Claude Code

Domine Claude Code do absoluto zero até o avançado

  • 120 aulas
  • 4 projetos
  • 9h 45min

Começando do primeiro caractere e indo em um passo negativo de -1

Esta operação resulta na string inversa dentro da variável txt, onde imprimimos ela posteriormente

Em outras linguagens geralmente utilizamos funções para atingir este resultado, o que pode acabar prejudicando a performance

Com Pyhton conseguimos utilizar operadores nativos para inverter a string, e encapsular esta inversão em uma variável

Note que você pode criar uma função com esta instrução e replicar em diversas partes do código caso seja necessário

Veja como ficaria esta função:

def inverter(txt):
  return txt[::-1]

Desta forma é possível realizar o reaproveitamento de código de uma maneira fácil

Conclusão

Neste artigo aprendemos a como inverter uma string em Python

Utilizamos uma notação de slice, que serve para recortar uma string em pontos que desejamos

Utilizando o passo negativo, o slice inverte a string e nos retorna o texto ao contrário

Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube

Subtítulo: Invertendo com reversed() e join():

O slice é o jeito mais direto, mas não é o único

O Python tem a função reversed(), que percorre a sequência de trás pra frente

Só que ela devolve um objeto reversed, não a string pronta

Por isso a gente junta os caracteres de volta com o join()

txt = "".join(reversed("Inverter texto")) print(txt) # otxet retrevnI

O reversed() faz o caminho de volta e o join() cola tudo numa string só

Se você conhece o join de listas, é a mesma ideia aqui aplicada no resultado do reversed

Subtítulo: E com um loop, dá pra inverter?

Dá sim, e é bom conhecer pra entender o que acontece por baixo

A lógica é ir pegando caractere por caractere e montando a string ao contrário

def inverter_loop(txt): invertida = "" for caractere in txt: invertida = caractere + invertida return invertida

print(inverter_loop("Inverter texto")) # otxet retrevnI

Cada caractere novo entra na FRENTE do que já tem, então no fim o texto sai invertido

Na prática o slice resolve em uma linha e você quase nunca vai precisar do loop, mas pra aprender é massa ver a mecânica por dentro

Subtítulo: Como inverter a ordem das palavras de uma frase?

Aqui é uma dúvida que confunde bastante gente

Inverter a string vira o texto letra por letra

Mas às vezes você não quer isso, quer inverter a ordem das PALAVRAS, mantendo cada palavra escrita certa

frase = "Hora de Codar" print(invertida) # Codar de Hora

O split() quebra a frase em uma lista de palavras

E o join() junta tudo de novo com espaço no meio

Dois problemas parecidos, resultados bem diferentes, se liga nessa

Leia também

Escrito por | Matheus Battisti

Matheus Battisti
Fundador da Hora de Codar

Programador apaixonado pelo mundo das tecnologias, sempre buscando em aprender e se aprofundar em linguagens, frameworks e o que mais for necessário para executar um bom trabalho. Agora tem uma nova missão que é de passar seu conhecimento adiante para formar novos programadores e especializar mais os que já são.

Subscribe
Notify of
guest

4 Comentários
Oldest
Newest Most Voted
arthur

Vlw Muito cara! Me salvo kkkjkk

Battisti

de nada =D

Kahcruz

teria como eu conseguir inverter sem usar o comando return?

Gabriel

É claro! O comando return só foi usado porque foi criada uma função para efetuar a inversão. Você só precisa fazer: string[::-1] e pronto, sua string estará invertida.

Formações

Formação Vibe Coding

Formação Vibe Coding

Do Prompt ao Produto: Crie Software Real com IA

  • 474 aulas
  • 20 projetos
  • 39h 27min

Blog | Mais populares