Python如何一步完成列表多轮元素递增并合并操作?
一步实现目标列表的方案
当然可以一步完成,用嵌套列表推导式就能直接生成最终结果,不需要分步创建B、C、D再合并:
A = [12, 8, 4, 0] result = [num + offset for offset in range(1, 4) for num in A]
运行这段代码后,result的值就是你要的[13, 9, 5, 1, 14, 10, 6, 2, 15, 11, 7, 3]。
逻辑说明:
- 外层循环遍历增量
offset,取值为1、2、3(对应原来B、C、D的元素加1、加2、加3的需求) - 内层循环遍历列表A中的每个元素,将元素与当前增量相加
- 所有生成的元素按顺序被收集到结果列表中,直接得到合并后的最终结果
内容的提问来源于stack exchange,提问作者rajunarlikar123
相关产品推荐
相关产品推荐

