I am trying to do something relatively simple in Python and am surprised at how badly this isn\'t working for how simple it should be.
I\'m here just trying to concatena
You're running under Windows, correct? The string you enter is terminated by a DOS line ending, so that ProjRegex
consists of test1abc\rtest2
. When printed, the \r
moves the cursor to the beginning of the line, at which point test2
overwrites test1
.
Could you verify if you've set the PYTHONUNBUFFERED
environment variable? When set on Windows, you will definitely run into issues where raw_input returns the \r
. You can read more about it here.
This must be a problem related to a a trailing \r
...
Try this:
'test1' + proj.rstrip() + 'test2'
Explanation:
Your concatenated string contains \r
in the middle. When printed, the console does print the beginning as test1...
but when it encounters the \r
, it "carriage-returns" to the beginning of the line, and overwrites it with the rest.
Further reading about newlines