Python處理十六進位制與二進位制轉換的問題——binascii自帶庫

中國剩餘定理發表於2020-12-23

python3.6

b2a_hex函式

二進位制 ——>>十六進位制

import binascii
data = "中文測試用例"
data = binascii.b2a_hex(data.encode("utf8"))
datas = data.decode(encoding='utf-8')
print(type(datas))
print(datas)

a2b_hex函式!!!

十六進位制 ——>>二進位制

import binascii
text = binascii.a2b_hex('e4b8ade69687e6b58be8af95e794a8e4be8b')
text = text.decode(encoding='utf-8')
print(type(text))
print(text)

python2.7

b2a_hex函式

二進位制 ——>>十六進位制

# coding:utf-8
import binascii
text = binascii.b2a_hex("中文測試用例")
print type(text)
print text

如果出現了這樣的儲存只需要新增:

'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
import sys
reload(sys)
sys.setdefaultencoding('utf8')

a2b_hex函式

十六進位制 – 》字串

# coding:utf-8
import binascii
text = binascii.a2b_hex("e4b8ade69687e6b58be8af95e794a8e4be8b")
print text

相關文章