将列表中的元素转换为列表中的嵌套列表

时间:2019-08-09 22:15:58

标签: python-3.7

我有一个列表,需要将其转换为列表中的嵌套列表

my_list = [2,5,6,7,8,15,34,56,78]

我需要列出

final_list = [[2,5,6],[7,8,15],[34,56,78]]

我使用带有长度命令和范围命令的for循环编写代码,我知道范围函数存在错误,但是我无法弄清楚。

my_list = [2,5,6,7,8,15,34,56,78]
max_split = 3
final_list = [[len(my_list) for _ in range(max_split)] for _ in range(max_split)]
print(final_list)

但是我得到的输出是[[9,9,9],[9,9,9],[9,9,9]]

2 个答案:

答案 0 :(得分:0)

您可以尝试以下代码

my_list = [2,5,6,7,8,15,34,56,78]
max_split = 3
final_list = [my_list[i:i + max_split ] for i in range(0, len(my_list), max_split )]
print(final_list)

Demo

答案 1 :(得分:0)

如果您使用for循环返回的索引,则可以像下面这样使用它们来遍历列表中的索引:

my_list = [2,5,6,7,8,15,34,56,78]
max_split = 3
final_list = [[my_list[i+3*j] for i in range(max_split)] for j in range(max_split)]
print(final_list)

输出:

[[2, 5, 6], [7, 8, 15], [34, 56, 78]]