0
我有一個字符串'123456ffffffff'。我如何獲得以下內容將字符串編碼爲十六進制字節
[0x12, 0x34, 0x56, 0xff, 0xff, 0xff, 0xff]
輸入字符串將只包含數字。輸出可以是ByteArray或只是一個數組
我有一個字符串'123456ffffffff'。我如何獲得以下內容將字符串編碼爲十六進制字節
[0x12, 0x34, 0x56, 0xff, 0xff, 0xff, 0xff]
輸入字符串將只包含數字。輸出可以是ByteArray或只是一個數組
如果你不關心3.x的兼容性,則:
s = '123456ffffffff'
result = list(bytearray(s.decode('hex')))
# [18, 52, 86, 255, 255, 255, 255]
對於3.x和兼容性,最好使用unhexlify
:
result = [ord(ch) for ch in unhexlify(s)]
:
from binascii import unhexlify
result = list(bytearray(unhexlify(s)))
所以,如果你不需要任何東西一bytearray
,你可以結束了