我有一个字符串列表,如下所示:
sixbit = ['000011', '000001', '010100', '100001']
我想遍历这个列表并生成一个看起来像这样的新列表:
eightbit = ['00001100', '00010101', '00100001']
出于说明的目的,len(sixbit) 等于 4,因为它可以很好地转换为八位。理想情况下,六位可以是任何长度——如果八位“切断”任何剩余的 1 或 0,那就没问题了。
这是我尝试过的一些代码......遗憾的是,它已经很远了,但也许你可以看到我正在尝试做的事情。这个想法是 1) 将所有数字放入一个大字符串 2) 循环遍历每个数字并保持计数,在迭代时将数字收集到持有人 3) 当 count = 8 时附加到列表 4) 继续迭代
def compress_six_bit(ary):
final_list = []
holder = ''
temp_string = ''
encode_counter = 0
for i in ary:
holder = holder + i
while encode_counter < 8:
encode_counter = encode_counter + 1
temp_string = temp_string + i
final_list.append(temp_string)
encode_counter = 0
temp_string = ''
return final_list