如何将'dead'字符串转换为unicode字符串?
这样做:

from binascii import unhexlify
out = ''.join(x for x in [unhexlify('de'), unhexlify('ad')])

创建u'\xde\xad'字符串<type 'str'>
尝试使用Unicode.join()如下:
from binascii import unhexlify
out = ''.join(x for x in [u'', unhexlify('de'), unhexlify('ad')])

导致错误:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xde in position 0: ordinal not in range(128)

最佳答案

Unicode被设计为与Latin-1兼容,您可以使用它并简单地解码bytestring:

In [2]: unhexlify('dead').decode('latin1')
Out[2]: u'\xde\xad'

09-10 07:35