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