从十六进制字符串转换为 unicode
如何将 'dead'
字符串转换为 unicode 字符串 u'\xde\xad'
?
这样做:
from binascii import unhexlify
out = ''.join(x for x in [unhexlify('de'), unhexlify('ad')])
创建一个
字符串 '\xde\xad'
尝试像这样使用 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)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Unicode 被设计为与 Latin-1 兼容,您可以使用它并简单地解码字节串:
Unicode is designed to be compatible with Latin-1, you can use that and simply decode the bytestring:
请参阅此 Python unicode 操作方法,并使用类似于:
或
See this Python unicode how-to, and use something akin to:
or