1. 程式人生 > 實用技巧 >在Python中將列表轉換為列表列表

在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

在這種方法中,我們使用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函式通過從原始列表中讀取每個元素並將其應用map函式來建立一系列列表元素。

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']]