ここからはPythonのマッピングについて学んでいきます。このページは、辞書(Dictionary)についての導入編でとして、以下のことを学びます。
- 辞書(Dictionary)の作り方
- 辞書(Dictionary)内のオブジェクトにアクセスする方法
- 辞書(Dictionary)のネスティング
- 基本的な辞書(Dictionary)メソッド
マッピングとは、キー(鍵)によって保管されているオブジェクトの集まりです。ここでは、シーケンスと違い、それぞれのオブジェクトは相対ポジションで保管されます。
これは重要な違いで、マッピングでは、オブジェクトを順序ではなく、キーによって判別します。
実際にみていきましょう。
辞書(Dictionary)の作り方
辞書(Dictionary)は以下のように作ります。
# {}を使ってキーと値を指定して辞書(Dictionary)を作ります
my_dict = {'key1':'value1','key2':'value2'}
# キーを使って値を呼び出します
my_dict['key2']
辞書(dictionary)は非常にフレキシブルで、様々なタイプのデータを扱うことができます。
my_dict = {'key1':123,'key2':[12,23,33],'key3':['itme0','item1','item2']}
# 辞書(Dictionary)の中からitemを呼び出します
my_dict['key3']
# itemの中の要素を呼び出すこともできます
my_dict['key3'][0]
# 同時にメソッドを用いて呼び出すこともできます
my_dict['key3'][0].upper()
キーの値を操作することもできます。
my_dict['key1']
# その値から123を引き算してみましょう
my_dict['key1'] = my_dict['key1'] - 123
#確認します
my_dict['key1']
Pythonにはあらかじめ用意されたメソッドがあり、それを使って足し算、引き算、掛け算、割り算を行うことができます。” += “や” -= “も使えます。以下をご覧ください。
# このオブジェクトを-123に設定します
my_dict['key1'] = -123
my_dict['key1']
アサインメントを使ってキーを作ることもできます。例えば、空の辞書(dictionary)から初めて、そこにどんどん足していくことができます。
#新しい辞書(Dictionary)を作ります
d = {}
# アサインメントを通じて新しいキーを挿入します
d['animal'] = 'Dog'
# どんなオブジェクトでも指定することができます
d['answer'] = 42
# 見てみましょう
d
辞書(dictionary)のネスティング
Pythonは、オブジェクトのネスティングと、メソッドの呼び出しを、非常にフレキシブルに行うことができる優れた言語です。以下が、辞書の中の辞書の例です。
# 辞書の中の辞書の中の辞書
d = {'key1':{'nestkey':{'subnestkey':'value'}}}
辞書(dictionary)の中の値はどうやって呼び出せるでしょうか?
# 値を出すにはキーを呼び出し続ける
d['key1']['nestkey']['subnestkey']
辞書(Dictionary)のメソッド
辞書(Dictionary)で呼び出せるメソッドはいくつかあります。
# 典型的な辞書(dictionary)を作ります
d = {'key1':1,'key2':2,'key3':3}
# 全てのキーのリストを返すメソッドです
d.keys()
# 全ての値を呼び出すメソッドです
d.values()
# 全てのアイテムのタプル(tuple)を返すメソッドです
d.items
まとめ
辞書(dicitionary)の構築方法はご理解いただけたでしょうか。実は、まだまだ深められるところはありますが、ここまでに留めておきたいと思います。このページでは、辞書(Dictionary)の使い方と、どうやって値を取り出すかをしっかり身につけて頂ければと思います。
コメント