这一行在python 2.7.6中运行良好,但在Python3.3.5中失败。如何在Python3中解码为hex
值。
return x.replace(' ', '').replace('\n', '').decode('hex')
溯源
AttributeError: 'str' object has no attribute 'decode'
发布于 2014-04-12 17:31:30
若要将十六进制转换为字符串,请使用binascii.unhexlify
。
>>> from binascii import unhexlify
>>> unhexlify(x.replace(' ', '').replace('\n', ''))
但是,您首先需要将x
变成bytes
才能使其工作,对于Python3。
>>> x = x.encode('ascii', 'strict')
然后进行十六进制到字符串的转换。
https://stackoverflow.com/questions/23033706
复制相似问题