There's nothing wrong with your data—it's pure ASCII. The problem is in your source code.
Clicking the Edit button to copy your actual source, rather than your formatted source, it's got non-breaking space (U+00A0) characters in the middle of the template
string literal.
Assuming your editor and the browser you copied from and pasted to are doing things right, that means that your actual UTF-8 source has '\xc2\xa0'
sequences.
Since you're putting non-ASCII characters into a str
/bytes
literal (which, as I explained in the other answer, is always a bad idea), this means your strings end up with '\xc2\xa0'
sequences.
Somewhere between there and your screen, there's an additional coding problem, and this is getting garbled into '\xc2\xac\xe2\x80\xa0'
sequences—which, when interpreted as UTF-8, show up as u'¬†'
.
We could try to track down where that additional problem is coming from, but it doesn't matter too much.
The immediate fix is to replace all the non-breaking spaces in your source with plain ASCII spaces.
Going beyond that, you need to figure out what you were using that generated these non-breaking spaces. Often, this is a sign of editing source code in word processors rather than text editors; if so, stop doing that.
If you don't actually have any intentionally-non-ASCII source code, using # coding=ascii
instead of # coding=utf-8
at the top of your file is a great way to catch bugs like this. (You can still process UTF-8 values; all the coding declaration says is that the source code itself is in UTF-8.)