Pythonの辞書(dictionary) fromkeys()関数を使用し辞書内の重複する要素を削除する

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()関数を使用し、自動的に全て削除されていることが確認できました。

コメント

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