Python3中列表方法append()和extend()的區別

pythontab發表於2019-06-11

列表方法append()和extend()之間的差異

1. 定義

list.append(object) 向列表中新增一個物件object

list.extend(sequence) 把一個序列sequence的內容新增到列表中

從定義上我們很難看出這兩個函式的區別。

2. 程式碼演示

append:在最後追加物件,把這個物件當做一個整體追加

name = ['py', 'python']
site = ['pythontab', 'pythontab.com']
name.append(site)
print (name)

結果

['py', 'python', ['pythontab', 'pythontab.com']]

使用append的時候,是將site看作一個物件,整體打包新增到name物件中。


extend:透過追加加迭代中的元素來擴充套件列表,把追加的序列拆開成多個元素加入到列表中

name = ['py', 'python']
site = ['pythontab', 'pythontab.com']
name.extend(site)
print (name)

結果

['py', 'python', 'pythontab', 'pythontab.com']

使用extend的時候,是將site看作一個序列,將這個序列和name序列合併,並放在其後面。

注: 以上程式碼在Python3下測試透過,相容Python2

3. 結論

這兩個函式在list中是很常用的函式, 都是對列表進行新增資料,但它們又有些不同。append側重整體附加, extend側重分散擴充套件。


相關文章