Como remover espaços em branco numa string em Python

Jinku Hu 30 janeiro 2023
  1. Remover espaço em branco no início de uma string em Python
  2. Remover espaço em branco no final de uma string em Python
  3. Remover espaços em branco tanto no início como no fim de uma string em Python
  4. Remover todos os espaços em branco de um string em Python
  5. Apenas remova os espaços em branco duplicados de uma string em Python
Como remover espaços em branco numa string em Python

Mostra-lhe abaixo como remover os espaços em branco de um string. Ele poderia ser categorizado principalmente em duas abordagens diferentes, uma é o método Python str, como str.split() e str.replace(); a outra é o método de expressão regular Python.

Nós utilizaremos a string " Demo Example " como a string a ser processada nos exemplos a seguir.

Remover espaço em branco no início de uma string em Python

str.lstrip() método

>>> demo = " Demo  Example  "
>>> demo.lstrip()
"Demo  Example  "

Aqui, str.lstrip() método remove os caracteres principais especificados no argumento do método. Se não houver nenhum argumento dado, ele simplesmente remove os espaços em branco principais.

Método Python regex

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"^\s+", "", demo)
"Demo  Example  "

^ forças regex só encontra a string correspondente no seu início, e \s significa combinar todos os diferentes tipos de espaços em branco como espaço em branco, separador, retorno, etc. ou em outras palavras, é igual à colecção destes caracteres especiais [ \t\n\r\f\v]. + indica que deve combinar com o maior número possível de espaços em branco.

Você poderia consultar este Python regular expression tutorial para aprender mais sobre o regex.

Remover espaço em branco no final de uma string em Python

Método str.rstrip()

Em contraste com str.lstrip() que remove os caracteres no início da string, str.rstrip() remove os caracteres no final.

>>> demo = " Demo  Example  "
>>> demo.lstrip()
" Demo  Example"

Método Python regex

Da mesma forma, você deve usar uma expressão que combine com os espaços em branco no final da string.

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"\s+$", "", demo)
" Demo  Example"

Remover espaços em branco tanto no início como no fim de uma string em Python

str.strip() Método

str.strip() é a combinação de str.lstrip() e str.rstrip() para eliminar espaços em branco no início e no fim da string.

>>> demo = " Demo  Example  "
>>> demo.strip()
"Demo  Example"

Python regex sub() método

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"^\s+|\s+$", "", demo)
"Demo  Example"

Remover todos os espaços em branco de um string em Python

Python string replace método str.replace()

Não é necessário verificar a posição do espaço branco. Portanto, você poderia utilizar o método str.replace() para substituir todos os espaços em branco com a string vazia.

>>> demo = " Demo  Example  "
>>> demo.replace(" ", "")
'DemoExample'

Python string regex substitui o método sub()

A expressão regex só poderia ser \s+ para combinar com os espaços em branco.

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"\s+", "", demo)
"DemoExample"

Apenas remova os espaços em branco duplicados de uma string em Python

Método Python string split str.split()

>>> demo = " Demo  Example  "
>>> " ".join(demo.split())
'Demo Example'

str.split() retorna uma lista das sub-strings na string, utilizando espaços em branco como a string delimitadora.

Python regex split método re.split()

>>> import re
>>> demo = " Demo  Example  "
>>> " ".join(re.split(r"\s+", demo)
" Demo Example "
Advertência
Os resultados de re.split() e str.split() são diferentes onde re.split() terá uma string vazia no início ou no final da lista se a string tiver espaços em branco nestas posições, mas str.split() não inclui nenhuma string vazia em seu resultado.
Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

Artigo relacionado - Python String