continuous learning company
Voltar para publicações
Ana Clara
ana clara castro Conheça o autor

replace() no Python: Como Substituir Textos (e Testar ao Vivo)

Trocar uma palavra, limitar as substituições ou limpar um telefone: conheça o replace(), veja o que acontece com a string original e pratique aqui mesmo.

08/10/2026 Desenvolvimento
Infográfico sobre replace() em Python: substituição simples, várias ocorrências, limite de substituições, limpeza de telefone e comparação com split() e join()

Você escreveu uma frase e precisa trocar um pedaço dela. Como fazer isso sem montar tudo de novo?

Imagine uma mensagem com o nome errado de um curso ou um telefone cheio de parênteses e hífens. O método replace() ajuda nessas pequenas transformações. Vamos partir de uma troca simples e testar situações que costumam confundir quem está começando.

1. O que é o replace()?

É um método de strings que devolve o texto com um trecho substituído por outro. Você informa o texto antigo, o texto novo e, se quiser, um limite de substituições.

texto.replace("antigo", "novo")
texto.replace("antigo", "novo", 1)

2. Uma troca simples

Que tal mudar a linguagem citada na frase, mantendo o restante da mensagem?

frase = "Eu gosto de Java"
resultado = frase.replace("Java", "Python")
print(resultado)  # Eu gosto de Python

Por padrão, todas as ocorrências são substituídas. A busca diferencia maiúsculas de minúsculas: "Python" e "python" não são iguais. Se o trecho não for encontrado, o resultado tem o mesmo conteúdo do texto de entrada.

Teste agora: sua própria substituição

Simulação em JavaScript do comportamento de replace() para os campos acima; não executa código Python. O código exibido pode ser copiado para seu editor.

3. Como trocar só a primeira ocorrência?

O terceiro argumento, chamado count, limita as trocas da esquerda para a direita. Com um, só a primeira muda; com zero, nenhuma. Um valor negativo significa substituir todas.

texto = "Python Python Python"
print(texto.replace("Python", "Java", 1))
# Java Python Python

4. A string original não muda sozinha

Strings são imutáveis. Chamar o método não altera o conteúdo da variável original: você precisa guardar o resultado. Pode usar outra variável ou reatribuir o nome existente.

frase = "Eu gosto de Java"
frase.replace("Java", "Python")
print(frase)  # Eu gosto de Java

frase = frase.replace("Java", "Python")
print(frase)  # Eu gosto de Python

Antes: frase = "Eu gosto de Java". Alterne entre descartar e guardar o retorno:

5. Aplicação prática: limpar um telefone

Uma string vazia no segundo argumento remove o trecho encontrado. Para retirar parênteses, espaço e hífen, podemos encadear quatro chamadas. Cada uma recebe o resultado da anterior.

telefone = "(85) 99999-9999"
limpo = telefone.replace("(", "").replace(")", "")
limpo = limpo.replace(" ", "").replace("-", "")
print(limpo)  # 85999999999

Limpar não é validar. Essa sequência remove somente os caracteres indicados; não verifica DDD, quantidade de dígitos ou se o telefone existe. Letras e outros símbolos permanecem.

Desmarque uma opção para ver o que fica. Inclua uma letra: ela não será removida.

6. replace(), split() e join(): qual usar?

  • Substituir: use replace() para trocar um trecho de uma string.
  • Separar: use split() para transformar um texto em uma lista de partes.
  • Juntar: use join() para unir um iterável de strings com um separador.

Pense na tarefa antes de escolher o método. Para trocar hífens por barras em uma data representada como texto, não é necessário separar e juntar: uma substituição literal resolve.

data = "2026-10-08"
print(data.replace("-", "/"))  # 2026/10/08

7. Cuidados para não trocar demais

A busca é por trecho literal, não por palavra inteira nem por expressão regular. Trocar "Ana" em "Ana e Anabela" também muda o início de Anabela. Para padrões mais complexos, estude o módulo re.

print("Ana e Anabela".replace("Ana", "Bia"))
# Bia e Biabela

Outro caso especial é buscar uma string vazia: o novo trecho entra nas posições antes, entre e depois dos caracteres, respeitando o limite. No laboratório, apague o campo antigo para observar esse comportamento.

print("ab".replace("", "-"))  # -a-b-

Para lembrar

Escolha o trecho, escolha a troca, guarde o resultado. Comece pelos botões de exemplo, limite uma substituição, teste uma busca que não existe e veja a diferença entre limpar e validar. Trocar textos também é programar!

Referência técnica: documentação oficial de str.replace() do Python.

Teste seu conhecimento

Responda às cinco perguntas e confira a explicação de cada resposta.

1. O que replace() devolve?

2. Qual é o resultado de "Python Python Python".replace("Python", "Java", 1)?

3. Depois de frase = "Java" e frase.replace("Java", "Python"), o que print(frase) mostra?

4. Qual é o resultado de "Python python".replace("python", "Java")?

5. O que "85-99999-9999".replace("-", "") faz?

Livros recomendados