我有一个字符串' 123456ffffffff'。我如何获得以下
[0x12, 0x34, 0x56, 0xff, 0xff, 0xff, 0xff]
输入字符串仅包含数字。输出可以是bytearray或简单的数组
答案 0 :(得分:0)
如果您不关心3.x兼容性,那么:
s = '123456ffffffff'
result = list(bytearray(s.decode('hex')))
# [18, 52, 86, 255, 255, 255, 255]
对于3.x,为了兼容性,最好使用unhexlify
:
from binascii import unhexlify
result = list(bytearray(unhexlify(s)))
因此,如果您不需要bytearray
任何内容,最终可能会:
result = [ord(ch) for ch in unhexlify(s)]