Python3中列表list合併的四種方法

2022-09-26 06:33:11 字數 1751 閱讀 7379

下面是[列表]合併的4種方法,其中的**都在python3下測試通過,在python2下執行應該也沒問題,時間關係就沒測試,有任何問題歡迎給我留言。

方法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,所ctgffidbe以直接列印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;

第三種方法功能比較強大,可以將乙個列表插入另乙個列表的任意程式設計客棧位置

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

本文標題: python3中列表list合併的四種方法

本文位址:

Python3基礎 list 運算 擴充列表

coder ubuntu source activate py37 py37 coder ubuntu ipython python 3.7.0 default,jun 28 2018,13 15 42 ipython 6.5.0 an enhanced interactive python.typ...

python3集合 Python3 集合

集合 set 是乙個無序的不重複元素序列。可以使用大括號 或者 set 函式建立集合,注意 建立乙個空集合必須用 set 而不是 因為 是用來建立乙個空字典。建立格式 parame 或者set value 這裡演示的是去重功能 orange in basket 快速判斷元素是否在集合內 true c...

python3集合 Python3 集合

python3 集合 集合 set 是乙個無序的不重複元素序列。可以使用大括號或者set 函式建立集合,注意 建立乙個空集合必須用set 而不是,因為是用來建立乙個空字典。集合內建方法 add 為集合新增元素 例項 fruits.add orange print fruits 輸出結果為 clear...