在Python中将列表转换为列表列表

在数据分析过程中,我们面临着将列表中的每个元素转换为子列表的方案。因此,在本文中,我们将需要一个普通列表作为输入,并转换成列表列表,其中每个元素都成为一个子列表。

使用for循环

这是一种非常简单的方法,其中我们创建了for循环来读取每个元素。我们将其读取为列表,并将结果存储在新列表中。

示例

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

#Given list
print("Given list: ",Alist)

# Each element as list
NewList= [[x] for x in Alist]

# Print
print("The new lists of lists: ",NewList)

输出结果

运行上面的代码给我们以下结果-

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

与分裂

在这种方法中,当元素被逗号分隔时,我们使用split函数提取它们。然后,我们继续将此元素作为列表添加到新创建的列表中。

示例

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

#Given list
print("Given list: ",Alist)

NewList= []

# Using split
for x in Alist:
   x = x.split(',')
   NewList.append(x)

# Print
print("The new lists of lists: ",NewList)

输出结果

运行上面的代码给我们以下结果-

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

使用映射

映射函数用于将相同的函数一次又一次地应用于一系列参数。因此,我们通过读取原始列表中的每个元素并使用map函数,使用lambda函数创建一系列列表元素。

示例

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

#Given list
print("Given list: ",Alist)

# Using map
NewList= list(map(lambda x:[x], Alist))

# Print
print("The new lists of lists: ",NewList)

输出结果

运行上面的代码给我们以下结果-

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