如何解码unicode raw文字到可读字符串? [英] How to decode unicode raw literals to readable string?
本文介绍了如何解码unicode raw文字到可读字符串?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果我将unicode原始文字分配给一个变量,我可以读取它的值:
>>> (s \\ u043b\\\е\\\н\\\о'
>>> $ $ $ $ \\ u0432\\\л\\\е\\\н\\\о'
>>>>打印s
Сообщениеотправлено
但是,当我已经将值分配给一个普通的,不是unicode字符串,我不能:
>>> s ='\\\С\\\о\\\о\\\б\\\щ\\\е\\\н\\\и\\\е \\\о\\\т\\\п\\\р\\\а\\\в\ u043b\\\е\\\н\\\о'
>>>> s
'\\\\С\\\\о\\\\о\\\\б\\\щ\\uu435\\\\н\\\\и\\\\\\\\\\\\ u0435 \\\\о\\\\т\\\\п\\\\р\\\\а\\uu432\\\\л\\\\л\\\\е\\\\н\\\\\\ u043e'
>>>打印s
\\\С\\\о\\\о\\\б\\\щ\\\е\\\н\\\и\\\е \\\о\\\т\\\п\\\р\\\а\ u0432\\\л\\\е\\\н\\\о
我如何解码和阅读?
解决方案
s.decode('unicode_escape')
/ pre>
If I assign unicode raw literals to a variable, I can read its value:
>>> s = u'\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e' >>> s u'\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e' >>> print s Сообщение отправлено
But when I have already assigned value to a plain, not unicode string, I can not:
>>> s = '\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e' >>> s '\\u0421\\u043e\\u043e\\u0431\\u0449\\u0435\\u043d\\u0438\\u0435 \\u043e\\u0442\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u043e' >>> print s \u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e
How can I decode and read it?
解决方案Use the unicode_escape codec:
s.decode('unicode_escape')
这篇关于如何解码unicode raw文字到可读字符串?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文