Python
 Computer >> コンピューター >  >> プログラミング >> Python

他のリストから重複する要素のインデックスを削除するPythonプログラム


他のリストから重複する要素のインデックスを削除する必要がある場合は、「列挙」属性、リスト内包表記、および単純な反復が使用されます。

以下は同じもののデモンストレーションです

my_list_1 = [4, 5, 6, 5, 4, 7, 8, 6]
my_list_2 = [1, 7, 6, 4, 7, 9, 10, 11]

print("The first list is :")
print(my_list_1)
print("The second list is :")
print(my_list_2)

temp_set = set()
temp = []

for index, value in enumerate(my_list_1):
   if value not in temp_set:
      temp_set.add(value)
   else:
      temp.append(index)

my_result = [element for index, element in enumerate(my_list_2) if index not in temp]

print("The result is :")
print(my_result)

出力

The first list is :
[4, 5, 6, 5, 4, 7, 8, 6]
The second list is :
[1, 7, 6, 4, 7, 9, 10, 11]
The result is :
[1, 7, 6, 9, 10]

説明

  • 整数の2つのリストが定義され、コンソールに表示されます。
  • 空のセットが作成され、「temp_set」として定義されます。
  • 空のリストが作成され、「temp」として定義されます。
  • 最初のリストは「enumerate」属性を使用して繰り返され、最初のリストの要素が2番目のリストの要素と比較されます。
  • 一致する場合、要素はリストに保存されます。
  • リスト内包表記を使用して、2番目のリストの要素を反復処理し、新しく作成されたリストに2番目のリストの要素の列挙が存在するかどうかを確認します。
  • リストに変換されます。
  • これは変数に割り当てられます。
  • これはコンソールに出力として表示されます。

  1. Pythonで別のリストからインデックスリストを削除するにはどうすればよいですか?

    ここには2つのリストがあります。L1は特定の要素を削除するリストオブジェクトであり、L2は削除する要素のインデックスを含みます。 >>> L1=[1, 2, 3, 4, 5, 6, 7, 8, 9] >>> L2=[2, 4, 6] L2にリストされているインデックスの要素を削除するために、最初にL1から列挙オブジェクトを作成します。 enumerate()関数は、リスト内のインデックスと要素に対応する2つの要素タプルのコレクションであるenumerateオブジェクトを返します。 次に、この列挙子に対して2つの変数を使用してforループを実行し、各インデ

  2. Pythonでインデックスによってリストから要素を削除するにはどうすればよいですか?

    リスト内のインデックスで要素を削除するには、2つのオプションがあります。 delステートメントを使用し、pop()メソッドを使用します。 delステートメントには、削除する要素のインデックスが必要です。 >>> L1=[11,22,33,44,55,66,77] >>> del L1[2] >>> L1 [11, 22, 44, 55, 66, 77] 組み込みリストクラスのpop()メソッドには、引数としてインデックスが必要です。このメソッドは、削除された要素を返し、リストの内容を1要素減らします。 >>> L1=[