list1の3番目のアイテムと一致するリストのリストアイテムをリスト2から削除したいと思います。私は現在、list1の各項目に対してlist2をループし、3番目の項目に基づいて削除しようとしています。2リストのリストとマッチを取り除く
list1: [[1,2,3],[4,5,6],[7,8,9]]
list2: [[-1,-2,3],[-4,-5,-6],[-7,-8,9],[1,2,8]]
final list2: [[-4,-5,-6],[1,2,8]]
私の擬似コード:
for item1 in list1:
for item2 in list2:
if item1[2] == item2[2]:
remove item2[2] from list2
を私はいくつかのサンプルセットを使用した技術および/またはタプルを試してみましたが、それらはすべてのリストの1つのリストから重複を削除するに基づいています。リストの別のリストの1つのフィールドに基づいてリストのリストの項目を削除するのとは対照的である。
ではなく、新しいリストを作成するのはなぜですか? 'new_list = [list1にない項目の場合はlist2の項目の項目]'望むなら 'list2'に代入することもできます。 – sytech
** 'list2からlist1の3番目の項目と一致するリスト項目を削除する' ** –
@sytechこれを実行しようとしましたか? – roganjosh