私はPython、特にリストを学ぼうとしていますが、小さな問題があります。私は2つのリストを持っています:
alist=[1,2,3,4,5,6,7,8,9,1,2,3]
blist=["a","b","c","d","e","f","g","h","i","a","b","c"]
私がやりたいのは、「両方のリスト」から重複を削除することです。つまり、alistの要素とblistの対応する要素(ペア)が同じである場合にのみ、それらを削除します。私は次のような結果を期待しています:
alist=[1,2,3,4,5,6,7,8,9]
blist=["a","b","c","d","e","f","g","h","i"]
だから、私は最初にzipでセットをしようとします:
kk=set(zip(alist,blist))
そして、次のことを行います。
alist[:],blist[:]=zip(*kk)
それから私は得る:
alist=[5, 6, 4, 7, 3, 8, 2, 1, 9]
blist=['e', 'f', 'd', 'g', 'c', 'h', 'b', 'a', 'i']
ご覧のとおり、順序は維持されていません。どういうわけか、「ソート済み」と「インデックス」を使用してリストを正しい順序で取得できるかどうか疑問に思いました。任意のガイダンスをいただければ幸いです。
Pythonのバージョンは2.7.3です