我有一个字符串s
定义为:
s='中文'
我需要将其编码为转义的代码单元(u4e2du6587
),如下所示:
s2='u4e2du6587'
我试过这个:
s1=unicode(s,'cp936')
print type(s1)
但它打印<type 'unicode'>
(如果我打印s
我会得到<type 'str'>
)。
如果这很重要,我使用的是Python 2.7.8。
s='中文'
是Python 2中的一个字节字符串,所以字节串的编码是模棱两可的。 它将采用源文件的编码,但缺少该信息。
但是,要使用 Unicode 字符串进行转换非常简单:
>>> s = u'中文'
>>> type(s)
<type 'unicode'>
>>> b = s.encode('unicode_escape')
>>> b
'\u4e2d\u6587'
>>> type(b)
<type 'str'>
>>> print b
u4e2du6587