下面是列表合併的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;
第三種方法功能比較強大,可以將一個列表插入另一個列表的任意位置
第四種方法類似於第二種方法,但是輸出的結果不同,如何使用需要看需求而定