我遇到的问题是我通过xmlrpc从我的一个客户端获得的字符串.他给我发了两次编码的utf8字符串:(所以当我在python中得到它们时,我有一个unicode对象,必须再次解码,但很明显python不允许这样.我注意到了我的客户端但是我需要在修复它之前,现在就做快速的解决方法.
来自tcp转储的原始字符串:
Rafa\xc3\x85\xc2\x82
这被转换成:
u'Rafa\xc5\x82'
我们得到的最好的是:
eval(repr(u'Rafa\xc5\x82')[1:]).decode("utf8")
这导致正确的字符串是:
u'Rafa\u0142'
然而,这种作品很丑陋,不能在生产代码中使用.如果有人知道如何以更合适的方式解决这个问题,请写信.谢谢,克里斯
>>> s = u'Rafa\xc5\x82' >>> s.encode('raw_unicode_escape').decode('utf-8') u'Rafa\u0142' >>>