You need to enable JavaScript to run this app. Python嵌套列表操作:如何实现每个子列表重复3次生成新列表
优惠活动
大模型
产品
解决方案
定价
更多

Python嵌套列表操作:如何实现每个子列表重复3次生成新列表

错误原因

你写的new_list = [i*3 for i in original]之所以输出不符合预期,核心是逻辑错位:推导式里的i是原列表的每个子列表,而Python中列表乘整数的运算规则,是把列表内部的元素重复N次拼接成一个更长的单列表,并不是把当前子列表作为独立整体重复插入外层列表,所以最终得到的是三个被拉长的单列表,而不是每个子列表重复三次的嵌套结构。

修正方案

要实现「每个子列表作为独立元素,连续重复3次排列在新列表中」的效果,只需要调整推导式的循环逻辑,对遍历到的每个子列表,连续生成3次独立的外层列表元素即可:

new_list = [sub_item for sub_item in original for _ in range(3)]

运行上述代码得到的结构,和你预期的输出完全一致。

额外提示

如果后续需要修改生成的重复子列表,不希望改动某一个重复项时联动影响其他同内容的重复项,可以在重复时为每个子列表生成独立的浅拷贝,避免所有重复项指向同一个内存对象:

# 生成独立拷贝,消除重复子列表的引用联动
new_list = [sub_item.copy() for sub_item in original for _ in range(3)]

内容的提问来源于stack exchange,提问作者Ahmad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.30 09:45:04