Python 字符串16進制轉換為字符串


介紹

我們知道,base16編碼就是將字符用16進制表示

’a’ =base16=> b’61’

那么簡單對16進制字符串進行base16解碼即可

binascii方法:

import binascii

hex_str = "557365723a20746573740d0a50617373776f72643a206f7073313233210d0a"

hex = hex_str.encode('utf-8')
str_bin = binascii.unhexlify(hex)
str = str_bin.decode('utf-8')

print str

base16方法:

hex_str = "557365723a20746573740d0a50617373776f72643a206f7073313233210d0a"

import base64

print(base64.b16decode(hex_str.upper()))

 

 

直接轉換:

hex_str = "557365723a20746573740d0a50617373776f72643a206f7073313233210d0a"
b_list = re.findall(".{2}", hex_str)
new_b = "\\x" + "\\x".join(b_list)
print new_b.decode("raw_unicode_escape")

 注:此方法暫時是有問題的,直接打印不是明文,但是復制后在打印就是明文。原因未知(持續更新)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM