在Python中指定二进制值的开始和结束

时间:2019-02-20 07:07:34

标签: python types binary hex

我正在用Python处理二进制值。 假设我有-

1000000100001011111000110010000011001010101100111101

我想在此行中指定起点和终点,将其切成薄片并将它们分别存储在不同的变量中。

是否可以将Python中的二进制值分成多个部分?

输入/输出示例: 输入

data = '1000000100001011111000110010000011001010101100111101'

输出

a = 10000
b = 001
c = 0000
d = 1011
e = 11100
f = 01100
g = 10
h = 0000
i = 1100
j = 10101011
k = 00111101

1 个答案:

答案 0 :(得分:0)

如果您的二进制值在字符串中,并且有一个要从中获取的长度列表,则可以从字符串的开头迭代并截取这些长度,如下所示—

data = '1000000100001011111000110010000011001010101100111101'
lengths = [5,3,4,4,5,5,2,4,4,8,8]
chunks = []

for l in lengths:
    chunk, data = data[:l], data[l:]
    chunks.append(chunk)

这将为您提供chunks

中的以下内容
['10000',
 '001',
 '0000',
 '1011',
 '11100',
 '01100',
 '10',
 '0000',
 '1100',
 '10101011',
 '00111101']