Quero eliminar todos os espaços em branco de um fio, nas duas pontas e no meio das palavras.
Eu tenho este código Python:
def my_handle(self):
sentence = ' hello apple '
sentence.strip()
Mas isso só elimina o espaço em branco de ambos os lados da corda. Como é que eu elimino todos os espaços em branco?
Se você quiser remover espaços iniciais e finais, utilize str.strip()
:
sentence = ' hello apple'
sentence.strip()
>>> 'hello apple'
Se você quiser remover todos os espaços, utilize str.replace()
:
sentence = ' hello apple'
sentence.replace(" ", "")
>>> 'helloapple'
Se você quiser remover espaços duplicados, utilize str.split()
:
sentence = ' hello apple'
" ".join(sentence.split())
>>> 'hello apple'
Para remover somente espaços utilize [str.replace`][replace]:
sentence = sentence.replace(' ', '')
Para remover todos os caracteres do espaço em branco (espaço, aba, nova linha, etc.) você pode usar [split
][split][split] depois [join][join]:
sentence = ''.join(sentence.split())
ou uma expressão regular:
import re
pattern = re.compile(r'\s+')
sentence = re.sub(pattern, '', sentence)
Se você quiser apenas remover espaços em branco do início e do fim você pode utilizar [strip
][strip]:
sentence = sentence.strip()
Você também pode utilizar [lstrip
][lstrip] para remover espaços em branco apenas do início da string, e rstrip
para remover espaços em branco do final da string.