python将列表转换为十六进制数据

时间:2017-03-28 09:19:56

标签: python

我的数据如下:

a = ['aa', '55', '00', '01', '00', '0a']

我想将其转换为:

a = '\xaa\x55\x00\x01\x00\x0a'

我该怎么做

由于

代码:

a = ['AA', '55', '00', '01', '00', '0A', '0F', 'A1', '13', '88', '00', '04', '32', '33', '30', '31', '30', '34', '00', '01']

d = []
for item in a:
    tmp = chr(int(item, 16))
    d.append(tmp)
    print(type(tmp))

print(repr(''.join(d)))

输出:

ªU\x00\x01\x00\n\x0f¡\x13\x88\x00\x04230104\x00\x01

结果与

相同
\xAA\x55\x00\x01\x00\x0A\x0F\xA1\x13\x88\x00\x04\x32\x33\x30\x31\x30\x34\x00\x01

我使用 print repr 进行打印,有没有办法可以在没有自动转换的情况下打印它。 THX

1 个答案:

答案 0 :(得分:1)

你没有写任何代码,所以我也不会。

你需要int base参数,你需要chr将数字转换为字符,你可能需要列表理解和{{3 }}