我在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
如果您的二进制值在字符串中,并且您有一个要从中获取的长度列表,则可以从字符串的前面迭代并剪掉这些长度,如下所示 -
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']