Python - 将给定列表转换为嵌套列表
pythonserver side programmingprogramming
可能存在需要将列表中的元素转换为列表本身的情况。换句话说,创建一个嵌套列表,因为其元素也是列表。
使用迭代
这是一种新颖的方法,我们获取列表的每个元素并将其转换为列表格式。我们使用临时列表来实现这一点。最后,所有这些转换为列表的元素组合在一起以创建所需的列表列表。
示例
listA = ['Mon','Tue','Wed','Thu','Fri'] print(" 给定列表:\n",listA) new_list = [] # 创建列表格式的列表 for elem in listA: temp = elem.split(', ') new_list.append((temp)) # 最终列表 res = [] for elem in new_list: temp = [] for e in elem: temp.append(e) res.append(temp) # 打印 print("列表列表:\n",res)
输出
运行上述代码得到以下结果 −
给定列表: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] 列表列表: [['Mon'], ['Tue'], ['Wed'], ['Thu'], ['Fri']]
用 ast
我们也可以使用python模块名称抽象语法树或称为 ast。它有一个名为 literal_eval 的函数,它将把给定列表的元素放在一起并将其转换为新列表。
示例
import ast listA = ['"Mon","Tue"',"Wed","Thu","Fri"'] print("给定列表:\n",listA) res = [list(ast.literal_eval(x)) for x in listA] # 新列表 print("列表列表:\n",res)
输出
运行上述代码得到以下结果 −
给定列表: ['"Mon","Tue"', '"Wed","Thu","Fri"'] 列表列表: [['Mon', 'Tue'], ['Wed', 'Thu', 'Fri']]