start - remove newline from string python
How do I trim whitespace from a Python string? (5)
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"
strip is not limited to whitespace characters either:
# remove all leading/trailing commas, periods and hyphens title = title.strip(',.-')
As pointed out in answers above
will remove all the leading and trailing whitespace characters such as \n, \r, \t, \f, space.
For more flexibility use the following
- Removes only leading whitespace chars:
- Removes only trailing whitespace chars:
- Removes specific whitespace chars:
myString.rstrip('\n\t')and so on.
More details are available in the docs
Just one space, or all such 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 spaces at ends removed 'Hello'
If you need only 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
>>> " Hello\n".strip(" ") 'Hello\n'
There is also a way to do it without that function
string = "Hello Wor l d " tmp_list =  for char in string: if char != " ": tmp_list +=char final_string = "".join(tmp_list) print final_string
But is just for fun :)
You want strip():
myphrases = [ " Hello ", " Hello", "Hello ", "Bob has a cat" ] for phrase in myphrases: print phrase.strip()