UnicodeEncodeError when piping stdout, but not when printing directly to the console
a24061 at ducksburg.com
Fri Jan 6 09:22:17 EST 2012
On 2012-01-06, Peter Otten wrote:
> Adam Funk wrote:
>> On 2012-01-04, Peter Otten wrote:
>>> Adam Funk wrote:
>>>> How can I force python (preferably within my python program, rather
>>>> than having to set something externally) to treat stdout as UTF-8?
>>> $ cat force_utf8.py
>>> # -*- coding: utf-8 -*-
>>> import sys
>>> if sys.stdout.encoding is None:
>>> import codecs
>>> writer = codecs.getwriter("utf-8")
>>> sys.stdout = writer(sys.stdout)
>>> print u"Ähnlich üblich nötig"
>> That's great, thanks!
>> I guess issues like this will magically go away when I eventually move
>> to Python 3?
> Not "magically", but UTF-8 has become the default encoding...
When Elaine turned 11, her mother sent her to train under
Donald Knuth in his mountain hideaway. [XKCD 342]
More information about the Python-list