Python のリストから重複項を削除の方法

リストから重複を削除するには、集合(セット)を使用できます。集合(セット)は無順序で一意の要素のデータ構造なので、リストを集合(セット)に変換してから、またリストに戻すことができます。

下記はサンプルのコードです。

my_list = [1, 2, 3, 3, 4, 5, 5, 6]
my_list = list(set(my_list))
print(my_list)

出力結果は [1, 2, 3, 4, 5, 6] で、重複する項目は削除されています。

セットは順序を持たないので、元のリストの順番は乱されることに注意しましょう。元のリストの順番を保持したい場合は、リスト内包表記と条件分岐を使って実現できます。

my_list = [1, 2, 3, 3, 4, 5, 5, 6]
my_list = [x for i, x in enumerate(my_list) if x not in my_list[:i]]
print(my_list)

結果は引き続き [1, 2, 3, 4, 5, 6] ですが、元のリストと同じ順番を保ちます。

bannerAds