如何在Python中将十六进制转换为纯ASCII?
请注意,例如,我希望将"0x7061756c“转换为"paul”。
发布于 2012-03-10 06:03:10
稍微简单一点的解决方案:
>>> "7061756c".decode("hex")
'paul'
发布于 2014-12-17 14:22:26
无需导入任何库:
>>> bytearray.fromhex("7061756c").decode()
'paul'
发布于 2012-03-10 06:01:06
>>> txt = '7061756c'
>>> ''.join([chr(int(''.join(c), 16)) for c in zip(txt[0::2],txt[1::2])])
'paul'
我只是在找乐子,但最重要的是:
>>> int('0a',16) # parse hex
10
>>> ''.join(['a', 'b']) # join characters
'ab'
>>> 'abcd'[0::2] # alternates
'ac'
>>> zip('abc', '123') # pair up
[('a', '1'), ('b', '2'), ('c', '3')]
>>> chr(32) # ascii to character
' '
现在看看binascii ..。
>>> print binascii.unhexlify('7061756c')
paul
很酷(我不知道为什么其他人想让你跳过圈套,然后他们才会帮助你)。
https://stackoverflow.com/questions/9641440
复制相似问题