Pythonの辞書(dictionary) fromkeys()関数を使用し辞書内の要素で、重複している要素を全て削除してみます。
■Python
Google Colaboratory(Google Colab),Python3.7.10
■辞書(dictionary) fromkeys()関数を使用し重複を削除する
では、早速辞書(dictionary) fromkeys()関数を使用し辞書内の要素で、重複している要素を全て削除スクリプトを書いていきます。
■コード
list_test1 = [5, 10, 5, 10, 2, 1, 3, 4, 6] list_test2 = ['田中', '大杉', '田中', '本宮', '岡田', '岡本', '小林', '村尾'] list_test1 = list(dict.fromkeys(list_test1)) print(list_test1) list_test2 = list(dict.fromkeys(list_test2)) print(list_test2)
今回は、list_test1とlist_test2というリストを角括弧( [ ] )を使用し定義します。定義されたリスト内には、それぞれ要素として、数値と文字列を格納します。
格納後、list_test1とlist_test2というリスト内で、dict.fromkeys()関数を使用します。関数の括弧内には、引数,パラメータとして、それぞれlist_test1とlist_test2を1つずつ渡します。これで、リスト内の要素をキーとする辞書に変換され、Pythonの辞書は重複したキーを含みませんので、重複が削除されたことになります。その後、list()関数を使用し、リスト内の要素をキーとする辞書から、再度リストに戻します。これで、最初に定義したリスト内の要素で、重複している要素が自動的に全て削除されます。
最後に、print()関数で、重複が削除された状態のリストを出力します。
■実行・検証
スクリプトを作成後、このスクリプトを実行してみます。
実行してみると、最初に定義したリストであるlist_test1とlist_test2の中から重複している要素が、dict.fromkeys()関数をlist()関数を使用し、自動的に全て削除されていることが確認できました。
コメント