リストを辞書にマッピングする

Beginner

This tutorial is from open-source community. Access the source code

はじめに

Python では、辞書(dictionary)はキーと値のペアの集合です。時には、リストの要素をキーとし、それらの要素に関数を適用した結果を値とする辞書をリストから作成する必要があります。このチャレンジでは、関数を使用してリストの値を辞書にマッピングする関数を作成します。

リストを辞書にマッピングする

map_dictionary(itr, fn) という名前の Python 関数を作成してください。この関数は 2 つのパラメータを取ります。

  • itr: 値のリスト
  • fn: 値を入力として受け取り、値を出力として返す関数

この関数は、キーが元の値で、値が関数の結果である辞書を返す必要があります。

この問題を解くには、以下の手順に従ってください。

  1. map() を使用して、リストの各値に fn を適用します。
  2. zip() を使用して、元の値と fn によって生成された値をペアにします。
  3. dict() を使用して、適切な辞書を返します。
def map_dictionary(itr, fn):
  return dict(zip(itr, map(fn, itr)))
map_dictionary([1, 2, 3], lambda x: x * x) ## { 1: 1, 2: 4, 3: 9 }

まとめ

このチャレンジでは、リストの要素をキーとし、それらの要素に関数を適用した結果を値とする辞書をリストから作成する方法を学びました。問題を解くために map()zip()、および dict() 関数を使用しました。