如何使用zip合并两个数组,返回扁平数组而非tuple元组
实现方案
方案1:索引遍历(无任何元组操作)
全程不涉及元组逻辑,直接按下标遍历两个数组逐个拼接:
first_array = [1, 2, 3, 4, 5] second_array = [100, 200, 400, 800, 1600] result = [] # 取两个数组的最小长度防止索引越界 max_index = min(len(first_array), len(second_array)) for i in range(max_index): result.append(first_array[i]) result.append(second_array[i]) # 按需求截断到目标长度,得到示例输出 result = result[:8] print(result) # 输出:[1, 100, 2, 200, 3, 400, 4, 800]
方案2:内置方法自动扁平化(无需手动处理元组)
如果只是不想手动拆解元组,可以用itertools.chain自动完成元组展开,不需要你手动操作元组:
from itertools import chain first_array = [1, 2, 3, 4, 5] second_array = [100, 200, 400, 800, 1600] result = list(chain.from_iterable(zip(first_array, second_array)))[:8] print(result) # 输出:[1, 100, 2, 200, 3, 400, 4, 800]
内容的提问来源于stack exchange,提问作者Sergio Bost
相关产品推荐
相关产品推荐

