ajkey94 ajkey94 - 6 months ago 27
Python Question

How do I replace multiple spaces with just one character?

Here's my code so far:

input1 = input("Please enter a string: ")
newstring = input1.replace(' ','_')

So if I put in my input as:

I want only one underscore.

It currently shows up as:


But I want it to show up like this:



This pattern will replace any groups of whitespace with a single underscore

newstring = '_'.join(input1.split())

If you only want to replace spaces (not tab/newline/linefeed etc.) it's probably easier to use a regex

import re
newstring = re.sub(' +', '_', input1)