1. 程式人生 > >python基礎 -----------花式玩轉list

python基礎 -----------花式玩轉list

一、巢狀列表list合併  並且去重!!!!

話不多說  直接上圖!!!!

想要兩個列表合併之後並去重  參見程式碼

zip是將兩個list作為元組物件進行合併 !!!重點!py2和py3有區別  py3使用zip之後返回的是一個zip物件 想要看到其中的內容 需要list(c)才可以。

#    c = [['a',1,11],['b',2,12]]
a = [['a',1],['b',2]]
b = [[11,1],[12,2]]

c = zip(a,b)

for m in c:

    n = m[0]+m[1]
    new = list(set(n))
    new.sort(key = n.index)
    print(new)
    print("="*50)

 二、多重巢狀列表合併 且 去重!!!

a = [[[1,2],[3,4]],[[5,6],[7,8]]]
b = [[['a'],['b']],[['c'],['d']]]

#  希望得到的結果 c = [[[1,2,'a'],[3,4,'b']],[[5,6,'c'],[7,8,'d']]] 


list1 = [[1,2],[3,4]]
list2 = [['a'],['b']]
c = zip(a,b)
c_1 = list(c)
mylist = []
for vo in c_1:
    bo = zip(vo[0],vo[1])
    volist = []
    for m in bo:
        n = m[0]+m[1]
        #去重
        new = list(set(n))
        new.sort(key = n.index)
        #如果不要去重直接append(n)即可
        volist.append(new)
    mylist.append(volist)

print(mylist)

搞定!!!!!!!!!