Remove whitespace from a string in Python

David Y.
—The Problem
How can I remove all whitespace from a string in Python, on both ends and between words? str.strip() only removes whitespace from the ends of the string.
The Solution
We can remove all space characters from a string using str.replace() to replace them with empty strings:
my_string = " Hello World !" my_string_no_spaces = my_string.replace(" ", "") print(my_string_no_spaces) # will print "HelloWorld!"
To remove all whitespace characters – not just regular spaces but also tabs, non-breaking spaces, hair-width spaces, etc. – we can import Python’s Regular Expressions module and use re.sub with "\s", a regular expression that will match any whitespace character. For example:
import re my_string = " Hello World !" my_string_no_spaces = re.sub("\s", "", my_string) print(my_string_no_spaces) # will print "HelloWorld!"
- Sentry BlogPython Performance Testing: A Comprehensive Guide (opens in a new tab)
- Syntax.fmListen to the Syntax Podcast (opens in a new tab)
- Sentry BlogLogging in Python: A Developer’s Guide (opens in a new tab)
- CodecovPython - Codecov (opens in a new tab)
- Listen to the Syntax Podcast (opens in a new tab)
![Syntax.fm logo]()
Tasty treats for web developers brought to you by Sentry. Get tips and tricks from Wes Bos and Scott Tolinski.
SEE EPISODES
Considered “not bad” by 4 million developers and more than 150,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.
