我想创建一个包含子列表的新列表,其长度取决于另一个列表,例如我有:a = [1,3,2,5,4]b = ['a','b','c','d','e','f','g','h','i','l','m','n','o','p','q']我想要一个嵌套的表单列表:[['a'], ['b', 'c', 'd'], ['e', 'f'], ['g', 'h', 'i', 'l', 'm'], ['n', 'o', 'p', 'q']]
2 回答

九州编程
TA贡献1785条经验 获得超4个赞
解决这个问题的步骤:
创建一个空列表
创建一个 int
done=0
来告诉您已经从数据中切分了多少内容循环遍历“如何在部分中剪切另一个列表”-列表的所有元素
从
done
todone
+切片“如何将另一个列表分成几部分”的当前元素,并将其附加到空列表中增加
done
你刚刚切片的任何东西添加(如果需要)剩余数据
打印它。

阿晨1998
TA贡献2037条经验 获得超6个赞
a = [1,3,2,5,4]
b = ['a','b','c','d','e','f','g','h','i','l','m','n','o','p','q']
out=[]
for number in a:
out.append(b[:number])
b=b[number:]
print(out)
#[['a'], ['b', 'c', 'd'], ['e', 'f'], ['g', 'h', 'i', 'l', 'm'], ['n', 'o', 'p', 'q']]
描述
out 是最终的输出列表。循环遍历列表 a 中的每个元素(比如“数字”),并将从列表 b 开头的许多元素的列表附加到我们的输出列表中。然后它继续更新列表 b 以便删除这些元素。
添加回答
举报
0/150
提交
取消