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

Python –同様のK番目の列要素の行を削除します


同様の「K」列要素の行を削除する必要がある場合は、単純な反復と「追加」メソッドが使用されます。

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

my_list = [[45, 95, 26], [70, 35, 74], [87, 65, 23], [70, 35, 74], [67,85,12], [45,65,0]]

print("The list is : " )
print(my_list)

K = 1
print("The value of K is ")
print(K)

my_result = []
my_mem = []
for index in my_list:

   if not index[K] in my_mem:
      my_result.append(index)
      my_mem.append(index[K])

print("The resultant list is : ")
print(my_result)

出力

The list is :
[[45, 95, 26], [70, 35, 74], [87, 65, 23], [70, 35, 74], [67, 85, 12], [45, 65, 0]]
The value of K is
1
The resultant list is :
[[45, 95, 26], [70, 35, 74], [87, 65, 23], [67, 85, 12]]

説明

  • リストのリストが定義され、コンソールに表示されます。

  • Kの値は初期化され、コンソールに出力されます。

  • 2つの空のリストが定義されています。

  • 2番目のリストに特定のインデックスが見つからない場合、元のリストが繰り返され、インデックスが最初のリストに追加され、インデックスの要素が2番目のリストに追加されます。

  • 最初のリストがコンソールに出力として表示されます。


  1. Pythonでリスト内の同じ要素を削除するにはどうすればよいですか?

    ブロックの外側のreturnステートメントを削除するだけです。それが動作します。また、最後の印刷ステートメントには、remaove_newではなくremove_sameが必要です。 def remove_same(L1, L2):     L1_copy = L1[:]     for e in L1_copy:         if e in L2:              L1.remove(e)     return

  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=[