假设我有2个bigs数组(我在这个例子中放了更小的数组):
a1=bytes([10,20,30,40,50,60,70,80])
a2=bytes([11,21,31,41,51,61,71,81])
我要做的是这样合并这两个数组:
^{pr2}$我想要的是从第一个数组取2个字节,然后从第二个数组取2个字节,等等
这就是我所做的。它是可行的,但我认为有一个最好的方法来做到这一点,而不必创建中间产物数组:
a3 = bytearray()
for i in range(0, len(a1), 2):
a3.append(a1[i])
a3.append(a1[i+1])
a3.append(b1[i])
a3.append(b1[i+1])
output_array=bytes(a3) # Very important: i need bytes() object at the end
从这里获取的块:How do you split a list into evenly sized chunks?
从这里合并:How do I merge two lists into a single list?
合并为:
您可以使用切片分配来执行此操作:
输出:
^{pr2}$Edit方法
这是另一种选择:
相关问题 更多 >
编程相关推荐