📅  最后修改于: 2023-12-03 15:22:25.081000             🧑  作者: Mango
若你有一个形如 [1,2,3,4,5,6,7,8,9]
的列表,你想要将其转换为一个步长为 n=3
的列表列表:
[[1,2,3], [4,5,6], [7,8,9]]
你可以使用以下 Python 代码:
lst = [1,2,3,4,5,6,7,8,9]
n = 3
new_lst = [lst[i:i+n] for i in range(0, len(lst), n)]
print(new_lst)
这里用到了 Python 中的列表解析语法。 lst[i:i+n]
表示从 lst
的 i
索引开始,取 n
个元素,即每个子列表中包含 n
个元素。 range
函数接受三个参数,分别是 start
, stop
, 和 step
,意思是从 start
开始,到 stop
结束,步长为 step
。 因此,range(0, len(lst), n)
生成步长为 n
的索引列表 [0, 3, 6]
。
最后,我们将每个子列表存储在 new_lst
中,并将其打印出来。
希望这个代码片段能帮助你将列表转换为列表列表,并在步长上指定自定义值。