[Python] リスト(配列)から重複する要素を除去する方法を丁寧に解説

Python

Pythonでリスト(配列)から重複する要素を除去する方法とは

Pythonでは、リスト(配列)から重複する要素を除去することができます。以下の方法で実現できます。

set()関数を使う方法

Pythonのset()関数を使うと、リストから重複する要素を除去することができます。set()関数は、重複する要素を削除した新しい集合を返します。

my_list = [1, 2, 3, 3, 4, 5, 5, 5, 6]

unique_list = list(set(my_list))

print(unique_list) # 出力: [1, 2, 3, 4, 5, 6]

リスト内包表記を使う方法

リスト内包表記を使って、重複する要素を除去することもできます。以下は、リスト内包表記を使った例です。

my_list = [1, 2, 3, 3, 4, 5, 5, 5, 6]
unique_list = []

[unique_list.append(x) for x in my_list if x not in unique_list]

print(unique_list) # 出力: [1, 2, 3, 4, 5, 6]

この例では、リスト内包表記を使って、重複する要素を除去しています。unique_listという空のリストを作成し、リスト内包表記を使って元のリストから要素を1つずつ取り出して重複していないか確認しています。重複していない場合は、unique_listに要素を追加します。

どちらの方法でも、重複する要素が除去された新しいリストが返されます。重複する要素が複数ある場合でも、1つだけ残されます。

なお、set()関数を使った場合は、重複する要素の順序が維持されないことに注意してください。順序を維持したまま重複を除去したい場合は、リスト内包表記を使う方法が適しています。

タイトルとURLをコピーしました