问题描述
我想将字符串编码为 unicode 之类的
>>> s = 'Hello,안녕'
>>> u = s.encode('raw_unicode_escape')
b'Hello,\\uc548\\ub155'
>>> doing something
>>> print(u)
Hello,\uc548\ub155
我想将 Unicode 本身显示为字符串,所以如果我写一个文件
Hello,\uc548\ub155
显示相同。
解决方法
我不是 100% 确定您需要什么,所以这里有一些示例:
Unicode 直接
>>> s = 'Hello,안녕'
>>> print(s)
Hello,안녕
Unicode \u 代码
>>> s = u'Hello,\uc548\ub155'
>>> print(s)
Hello,안녕
Unicode → ByteString
>>> u = s.encode('raw_unicode_escape')
>>> print(u)
b'Hello,\\uc548\\ub155'
ByteString → Unicode
>>> u = u.decode('unicode_escape')
>>> print(u)
Hello,안녕
翻译功能
>>> def _(unicode_text):
return unicode_text.encode('unicode_escape')
. . .
>>> s = f'Hello,{_("안녕")}'
>>> print(s)
Hello,b'\\uc548\\ub155'