Python中合并列表(list)的六種方法小結(jié)
列表是Python中強大的數(shù)據(jù)結(jié)構(gòu),很多時候我們要對它進行增、刪、改、查,其中增是常見的操作,一般通過合并列表的方法來實現(xiàn)。那么,如何把2個列表合并成多個列表呢?今天我們就來學習一下六種不同的方法。
一、直接用 + 合并列表
最簡單的辦法就是用 +,把兩個列表加起來,實際上就是合并在了一起。
list1 = [1, 2, 3] list2 = [4, 5, 6] merged_list = list1 + list2 print(merged_list) # 輸出:[1, 2, 3, 4, 5, 6]
這種辦法很直接,也很容易記,但是效率并不高,適合初學者直接連接兩個元素不是特別多的列表。
二、用 extend() 方法
與append()進行元素追加的方法不同,extend() 方法可以把一個列表的內(nèi)容追加加到另一個列表的末尾,就像這樣:
list1 = [1, 2, 3] list2 = [4, 5, 6] list1.extend(list2) print(list1) # 輸出:[1, 2, 3, 4, 5, 6]
注意哦,extend() 會改變原來的列表,不會創(chuàng)建一個新的。
三、用 zip() 函數(shù)交叉合并
如果你想交叉著合并兩個列表,可以這么做:
lst1 = [1, 2, 3] lst2 = [4, 5, 6] merged_lst = [item for pair in zip(lst1, lst2) for item in pair] print(merged_lst) # 輸出:[1, 4, 2, 5, 3, 6]
這樣會把兩個列表里對應位置的元素交叉合并到一起,注意這里的列表沒有按照原來的順利進行。
四、用星號*解包列表后合并
我們都知道可以在python中用星號解包列表,解包完,我們可以把元素重新放到列表中,如下:
lst1 = [1, 2, 3] lst2 = [4, 5, 6] merged_lst = [*list1,*list2] print(merged_lst) # 輸出:[1, 2,3, 4, 5, 6]
五、用列表推導式合并
列表推導式可以用來合并列表,很簡潔也很高效:
lst1 = [1, 2, 3] lst2 = [4, 5, 6] merged_lst = [item for sublist in [lst1, lst2] for item in sublist] print(merged_lst) # 輸出:[1, 2, 3, 4, 5, 6]
這種辦法很靈活,執(zhí)行速度也很快,能用來處理更復雜的合并操作。
六、用 itertools.chain() 合并
itertools.chain() 可以用來合并任意數(shù)量的列表或其他可以迭代的對象:
from itertools import chain lst1 = [1, 2, 3] lst2 = [4, 5, 6] merged_lst = list(chain(lst1, lst2)) print(merged_lst) # 輸出:[1, 2, 3, 4, 5, 6]
在處理大量列表時,這個辦法特別高效。但需要引入chain這個標準模塊。因為是python自帶的,所以并不需要安裝。
七、學后總結(jié)
- 每種都有它的長處,可以根據(jù)需求選擇最適合的方法。
- 合并列表或者字符串時要注意,合并的內(nèi)容都是相同類型,不然無法合并,如列表和字符串就無法合并。因此,在編程過程中,有時需要對合并的內(nèi)容的數(shù)據(jù)類型進行判斷,然后再進行操作。
到此這篇關于Python中合并列表(list)的六種方法小結(jié)的文章就介紹到這了,更多相關Python 合并列表 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
pandas按若干個列的組合條件篩選數(shù)據(jù)的方法
下面小編就為大家分享一篇pandas按若干個列的組合條件篩選數(shù)據(jù)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04

