Python3 列表list合併的4種方法

pythontab發表於2019-04-03

下面是列表合併的4種方法,其中的程式碼都在Python3下測試透過,在Python2下執行應該也沒問題,時間關係就沒測試,遇到問題可以去bbs.pythontab.com留言提問

方法1: 直接使用"+"號合併列表

aList = [1,2,3]
bList = ['www', 'pythontab.com']
cList = aList + bList
dList = bList + aList
print(cList)
print(dList)

輸出為:

[1, 2, 3, 'www', 'pythontab.com']
['www', 'pythontab.com', 1, 2, 3]

方法2: 使用extend方法

aList = [1,2,3]
bList = ['www', 'pythontab.com']
aList.extend(bList)
print(aList)

輸出為:

[1, 2, 3, 'www', 'pythontab.com']

注意:使用extend方法會直接修改list資料,extend方法的返回值為None,所以直接列印aList

方法3: 使用切片

aList = [1,2,3]
bList = ['www', 'pythontab.com']
aList[len(aList):len(aList)] = bList
print(aList)

輸出:

[1, 2, 3, 'www', 'pythontab.com']

注:len(aList)代表要將bList插入aList中的位置

例如

aList = [1,2,3]
bList = ['www', 'pythontab.com']
aList[1:1] = bList
print(aList)

輸出為:

[1, 'www', 'pythontab.com', 2, 3]

方法4: 使用append方法

a.append(b)將b看成list一個元素和a合併成一個新的list,它和前面的方法的輸出結果不同

例項:

aList = [1,2,3]
bList = ['www', 'pythontab.com']
aList.append(bList)
print(aList)

輸出:

[1, 2, 3, ['www', 'pythontab.com']]

它直接把bList當成了一個元素整個放入了aList

總結:

第一種方方法思路比較清晰,就是運算子的過載

第二種方法比較簡潔,但會覆蓋原始list;

第三種方法功能比較強大,可以將一個列表插入另一個列表的任意位置

第四種方法類似於第二種方法,但是輸出的結果不同,如何使用需要看需求而定


相關文章