Python print unicode list

gongzhitaao picture gongzhitaao · Mar 30, 2014 · Viewed 10.3k times · Source

With the following code

lst = [u'\u5de5', u'\u5de5']
msg = repr(lst).decode('unicode-escape')
print msg

I got

[u'工', u'工']

How can I remove the leading u so that the content of msg is:

['工', '工']

Answer

falsetru picture falsetru · Mar 30, 2014
>>> import sys
>>> lst = [u'\u5de5', u'\u5de5']
>>> msg = repr([x.encode(sys.stdout.encoding) for x in lst]).decode('string-escape')
>>> print msg
['工', '工']