2013-03-01 68 views
0

(Python)我有2個列表,並希望按如下方式合併它們。合併列表,無需排序,不會消除重複項

a = [2,5,1] 
b = [4,2,2] 

合併列表和預期的輸出應爲:[2,5,1,4,2,2]

+0

以供將來參考,您正在尋找的術語是 「連擊」,而不是 「合併」 – mgilson 2013-03-01 03:03:45

+0

假設[nneonneo](http://stackoverflow.com/users/1 204143/nneonneo)幫助你,你應該upvote並檢查他。 – xxmbabanexx 2013-03-01 03:06:42

回答

4

使用+

a + b 

這將創建一個新的列表,它是兩個輸入列表的連接。

+0

奧卡姆的剃刀效果。 – GordonsBeard 2013-03-01 03:00:57

+2

這是我希望沒有最小字符數的時間:) – nneonneo 2013-03-01 03:01:25

0

的擴展功能,這只是延長ab

a = [2,5,1] 
b = [4,2,2] 
a.extend(b) 

爲了使新的列表,如:c人能做到像下面這樣,即使nneonneo答案是簡單..:

def extendList(a, b): 
    a.extend(b) 
    return a 

a = [2,5,1] 
b = [4,2,2] 
c = extendList(a, b) 
+1

(請注意,'extendList'會突變傳入的第一個列表,而後面的'a是c')。 – nneonneo 2013-03-01 04:50:29

+0

好的。但是我不明白爲什麼'a是c''後 – JHolta 2013-03-01 05:27:22

+0

'a是c'將在'c = extendList(a,b)'後成爲'True'。這意味着對'a'的修改會影響'c',反之亦然,因爲它們是相同的列表。這可能在某些情況下有問題,或在其他情況下有益。 – nneonneo 2013-03-01 05:29:17