Why can't I display a unicode character in the Python Interpreter on Mac OS X Terminal.app?

Posted by apphacker on Stack Overflow See other posts from Stack Overflow or by apphacker
Published on 2010-04-27T03:20:12Z Indexed on 2010/04/27 3:23 UTC
Read the original article Hit count: 255

Filed under:
|
|
|

If I try to paste a unicode character such as the middle dot:

·

in my python interpreter it does nothing. I'm using Terminal.app on Mac OS X and when I'm simply in in bash I have no trouble:

:~$ ·

But in the interpreter:

:~$ python
Python 2.6.1 (r261:67515, Feb 11 2010, 00:51:29) 
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 

^^ I get nothing, it just ignores that I just pasted the character. If I use the escape \xNN\xNN representation of the middle dot '\xc2\xb7', and try to convert to unicode, trying to show the dot causes the interpreter to throw an error:

>>> unicode('\xc2\xb7')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 0: ordinal not in range(128)

I have setup 'utf-8' as my default encoding in sitecustomize.py so:

>>> sys.getdefaultencoding()
'utf-8'

What gives? It's not the Terminal. It's not Python, what am I doing wrong?!

This question is not related to this question, as that indivdiual is able to paste unicode into his Terminal.

© Stack Overflow or respective owner

Related posts about python

Related posts about unicode