【发布时间】:2019-05-04 15:50:42
【问题描述】:
我有一行" 39 14 40 00 21 74 D1 69 22 53 AA 36 A4 08 2F 49"。每个数字都是一个十六进制值。我想将每个单独的十六进制数转换为二进制数。我知道python不理解十六进制值等。
我看到的问题是我从文本文件中挑选这一行并将其保存为字符串。一旦保存为字符串 python 就不允许我将每个单独的值转换为十六进制。
当我从文件中保存给定的行时,我将其保存为列表或字符串。 列表无法转换,但我也无法将字符串转换为十六进制。示例我希望将第一个值 39 写为 0011 1001 等二进制。
if line1.startswith("Start Test tb_sctpReadEFuseTest"):
hex_line = str([next(islice(file_name, 38, 39))[6:55]])
binary_form= ''.join(['{0:08b}'.format(x) for x in hex_line])
print(hex_line)
print(binary_form)
字符串:39 14 40 00 21 74 D1 69 22 53 AA 36 A4 08 2F 49
输出:0011 1001 0001 0100 0100 0000 0000 0000 0010 0001 0111 0100 等
【问题讨论】: