Python中合并列表(list)的六種方法小結(jié)
列表是Python中強(qiáng)大的數(shù)據(jù)結(jié)構(gòu),很多時候我們要對它進(jìn)行增、刪、改、查,其中增是常見的操作,一般通過合并列表的方法來實現(xiàn)。那么,如何把2個列表合并成多個列表呢?今天我們就來學(xué)習(xí)一下六種不同的方法。
一、直接用 + 合并列表
最簡單的辦法就是用 +,把兩個列表加起來,實際上就是合并在了一起。
list1 = [1, 2, 3] list2 = [4, 5, 6] merged_list = list1 + list2 print(merged_list) # 輸出:[1, 2, 3, 4, 5, 6]
這種辦法很直接,也很容易記,但是效率并不高,適合初學(xué)者直接連接兩個元素不是特別多的列表。
二、用 extend() 方法
與append()進(jìn)行元素追加的方法不同,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]
這樣會把兩個列表里對應(yīng)位置的元素交叉合并到一起,注意這里的列表沒有按照原來的順利進(jìn)行。
四、用星號*解包列表后合并
我們都知道可以在python中用星號解包列表,解包完,我們可以把元素重新放到列表中,如下:
lst1 = [1, 2, 3] lst2 = [4, 5, 6] merged_lst = [*list1,*list2] print(merged_lst) # 輸出:[1, 2,3, 4, 5, 6]
五、用列表推導(dǎo)式合并
列表推導(dǎo)式可以用來合并列表,很簡潔也很高效:
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í)行速度也很快,能用來處理更復(fù)雜的合并操作。
六、用 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這個標(biāo)準(zhǔn)模塊。因為是python自帶的,所以并不需要安裝。
七、學(xué)后總結(jié)
- 每種都有它的長處,可以根據(jù)需求選擇最適合的方法。
- 合并列表或者字符串時要注意,合并的內(nèi)容都是相同類型,不然無法合并,如列表和字符串就無法合并。因此,在編程過程中,有時需要對合并的內(nèi)容的數(shù)據(jù)類型進(jìn)行判斷,然后再進(jìn)行操作。
到此這篇關(guān)于Python中合并列表(list)的六種方法小結(jié)的文章就介紹到這了,更多相關(guān)Python 合并列表 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python多線程、異步+多進(jìn)程爬蟲實現(xiàn)代碼
這篇文章主要介紹了Python多線程、異步+多進(jìn)程爬蟲實現(xiàn)代碼,需要的朋友可以參考下2016-02-02通過python實現(xiàn)Google的精準(zhǔn)搜索功能
這篇文章主要介紹了通過python實現(xiàn)Google的精準(zhǔn)搜索功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2024-05-05pandas按若干個列的組合條件篩選數(shù)據(jù)的方法
下面小編就為大家分享一篇pandas按若干個列的組合條件篩選數(shù)據(jù)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04Python學(xué)習(xí)之集合的常用方法總結(jié)
集合并不是一種數(shù)據(jù)處理類型,而是一種中間類型。集合(set)是一個無序、不重復(fù)的元素序列,經(jīng)常被用來處理兩個列表進(jìn)行交并差的處理性。本文將詳細(xì)講解集合的一些常用方法,感興趣的可以了解一下2022-03-03Python中元組的基礎(chǔ)介紹及常用操作總結(jié)
元組是一種不可變序列。元組變量的賦值要在定義時就進(jìn)行,這就像C語言中的const變量或是C++的引用,定義時賦值之后就不允許有修改。元組存在的意義是:元組在映射中可以作為鍵使用,因為要保證鍵的不變性。元組作為很多內(nèi)置函數(shù)和方法的返回值存在2021-09-09