Pythonについて詳しく解説します
Pythonで配列内の重複しているデータを削除する方法をサクッと教えて下さい!
…という方に向けて、この記事を書いています。
Pythonのリスト(配列)に入力したデータの重複を削除したい、という場面はちょくちょく出てくると思います。
例えばこんなリストを…
l = [ "あああ", "あああ", "いいい", "いいい", "ううう", "えええ", "おおお", "えええ",]
こうじゃ!
['いいい', 'おおお', 'ううう', 'えええ', 'あああ']
この記事では、コピペだけで即・重複削除できるコードをまとめました。
早速見ていきましょう!
【コード】重複データを削除する方法
ということで、その記述は以下の通り。
l = list(set(l))
lという配列変数に上記の処理を行うと、重複データが削除され、すべてユニークな値になるはずです。
もちろん、変数名は適宜置き換えてくださいね。
【解説】どういう処理をしているのか
たった1行の処理ですが、もう少し詳しく解説します。
l = list(set(l))
まず、配列をset()という処理を使って、Set型に変換しています。
Set型とは「集合を扱うための、複数の値を格納できる変数」です。
ナンノコッチャという感じですが、Set型にしたデータ同士を比較するために使う変数です。
この変数を使うと、「AのリストにはあってBのリストにはない値を探す」というような処理ができるようになります。
データ比較用に使う変数という感じですね。
で、このSet型に変換した時点で、重複している値をすべて削除してくれます。
先程のサンプルだと、「あああ」は1つだけに、「いいい」は1つだけに残されて、Set型の変数に格納されていくわけですね。
この仕様を使って、List型→Set型に変更して重複削除してしまおう!
…というのがこの処理です。
ただ、このままだとSet型に変更されたままなので、再びList型に変更し直してあげる必要があります。
重複削除されたデータはList型に戻しても元に戻るわけではないので、この方法を使えば超簡単に重複削除が出来る!というわけですね。
まとめ
以上、リストから重複しているデータを削除する超簡単な方法でした。
ぜひ、さっそく試してみてください!
このように、コピペでそのまま使えるPythonスクリプトなど、Tipstourでは他にも色々な情報をシェアしています。
興味があれば、ぜひ他の記事もチェックしてみてください。