用utf8值打印python字典

时间:2014-08-04 12:27:33

标签: python dictionary utf-8

我有utf8字符串值的字典。我需要打印它而不包含任何 \ xd1 \ u0441 u '字符串'符号。

# -*- coding: utf-8 -*-

a = u'lang=русский'

# prints: lang=русский
print(a)

mydict = {}
mydict['string'] = a
mydict2 = repr(mydict).decode("unicode-escape")

# prints: {'string': u'lang=русский'}
print mydict2

预期

{'string': 'lang=русский'}

没有解析字典有可能吗? 这个问题与Python print unicode strings in arrays as characters, not code points有关,但我需要摆脱烦人的

1 个答案:

答案 0 :(得分:3)

我无法看到一个合理的用例,但如果你想要一个字典的自定义表示(或者更好地说,字典中的unicode对象的自定义表示),你可以自己滚动它:

def repr_dict(d):
    return '{%s}' % ',\n'.join("'%s': '%s'" % pair for pair in d.iteritems())

然后

print repr_dict({u'string': u'lang=русский'})