python字典中的非英文字符无法正确打印

时间:2014-11-27 11:16:26

标签: python json dictionary unicode utf-8

好的,首先,是的,我已阅读http://www.joelonsoftware.com/articles/Unicode.html

我仍然无法理解原因:

# -*- coding: utf-8 -*-
import json
a='ööö'
b='ääß'

print a+' '+b
>>>ööö ääß

print {'a':a,'b':b}
>>>{'a': '\xc3\xb6\xc3\xb6\xc3\xb6', 'b': '\xc3\xa4\xc3\xa4\xc3\x9f'}

有人可以协助如何简单地输出

print {'a':a,'b':b}
    >>>{'a': 'ööö', 'b': 'ääß'}

我尝试了unicode(a),a.encode(' utf-8'),unicode(a).encode(' utf-8')等各种组合,没有用。

感觉很愚蠢。

如果有人可以用完整的例子来解释这个foor noobs,真的很感激.l

非常感谢!

1 个答案:

答案 0 :(得分:0)

>>> d = {'a': unicode('ööö', 'utf-8'), 'b': unicode('ääß', 'utf-8')}
>>> print repr(d).decode("unicode-escape")
{'a': u'ööö', 'b': u'ääß'}