Posted By: robert
How do I remove leading and trailing whitespace from a string in Python?
" Hello " --> "Hello" " Hello" --> "Hello" "Hello " --> "Hello" "Bob has a cat" --> "Bob has a cat"
Just one space or all consecutive spaces? If the second, then strings already have a
>>> ' 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'
If you only need to remove one space however, you could do it with:
def strip_one_space(s): if s.endswith(" "): s = s[:-1] if s.startswith(" "): s = s[1:] return s >>> strip_one_space(" Hello ") ' Hello'
Also, note that
str.strip() removes other whitespace characters as well (e.g. tabs and newlines). To remove only spaces, you can specify the character to remove as an argument to
>>> " Hellon".strip(" ") 'Hellon'