Python - 将给定的列表转换为嵌套列表


在某些情况下,我们需要将列表中的元素本身转换成一个列表。换句话说,创建一个列表,其元素也是列表。

使用迭代

这是将每个列表元素转换成列表格式的新颖方法。我们使用临时列表来实现此目的。最后,将所有转换成列表的这些元素组合在一起创建所需的列表列表。

举例

 实时演示

listA = ['Mon','Tue','Wed','Thu','Fri']

print("Given list:\n",listA)
new_list = []

# Creating list of list format
for elem in listA:
   temp = elem.split(', ')
   new_list.append((temp))

# Final list
res = []

for elem in new_list:
   temp = []
   for e in elem:
      temp.append(e)
   res.append(temp)

# printing
print("The list of lists:\n",res)

输出

运行以上代码会得到以下结果 -

Given list:
   ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
The list of lists:
   [['Mon'], ['Tue'], ['Wed'], ['Thu'], ['Fri']]

使用 ast

我们还可以使用名为抽象语法树或 ast 的 python 模块。它有一个名为 literal_eval 的函数,该函数将给定列表的元素组合在一起,并将其转换为一个新列表。

举例

 实时演示

import ast
listA = ['"Mon","Tue"','"Wed","Thu","Fri"']
print("Given list: \n", listA)
res = [list(ast.literal_eval(x)) for x in listA]

# New List
print("The list of lists:\n",res)

输出

运行以上代码会得到以下结果 -

Given list:
   ['"Mon","Tue"', '"Wed","Thu","Fri"']
The list of lists:
   [['Mon', 'Tue'], ['Wed', 'Thu', 'Fri']]

更新于: 22-Jul-2020

1K+ 查看

开启您的 职业

通过完成课程取得认证

开始
广告