Come rimuovo gli spazi bianchi iniziali e finali da una stringa in Python?
Per esempio:
" Hello " --> "Hello"
" Hello" --> "Hello"
"Hello " --> "Hello"
"Bob has a cat" --> "Bob has a cat"
Solo uno spazio o tutti gli spazi consecutivi? Se la seconda, allora le stringhe hanno già un metodo .strip()
:
>>> ' Hello '.strip()
'Hello'
>>> ' Hello'.strip()
'Hello'
>>> 'Bob has a cat'.strip()
'Bob has a cat'
>>> ' Hello '.strip() # ALL consecutive spaces at both ends removed
'Hello'
Se hai bisogno di rimuovere solo uno spazio però, potresti farlo con:
def strip_one_space(s):
if s.endswith(" "): s = s[:-1]
if s.startswith(" "): s = s[1:]
return s
>>> strip_one_space(" Hello ")
' Hello'
Inoltre, notate che str.strip()
rimuove anche altri caratteri di spazio bianco (ad esempio tabulazioni e newline). Per rimuovere solo gli spazi, potete specificare il carattere da rimuovere come argomento di strip
, cioè:
>>> " Hello\n".strip(" ")
'Hello\n'
Questo rimuoverà tutti gli spazi bianchi iniziali e finali in myString
:
myString.strip()