【独学プログラマー】辞書
辞書
辞書とは
オブジェクトを保存しておける組み込みのコンテナのこと。
どんなコンテナ?
2つのオブジェクトを関連付けて保持するコンテナ。
使い方
片方のつのオブジェクトを格納時・取得時のキーに使う
片方のつのオブジェクトをバリューとしてキーに関連付けつつ保持する。
上記の使用方法をキーバリューペアという。
キーバリューペアを辞書に追加するとどうなるのか?
答え→辞書からバリューを取り出せるようになる。辞書に追加すると、そのキーを使って辞書からバリューを取り出せるようになる
バリューからキーを取り出すことができるのか?
答え→できない。バリューからキーを取り出すことはできない。
新しくキューバリューペアを追加することはできるのか?
答え→できる。辞書はミュータプルなので追加可能である。
その他
・辞書に格納するオブジェクトの順番は指定できない。
・キーとバリューのペアを関連付けてデータを扱うことはとても便利である。
・キーバリューペアを辞書オブジェクト作成の時点においても追加可能。
辞書の表し方
辞書は下記図1,2のように波かっこに挟まれた形で表す。
図1
図2
キーバリューペアを辞書オブジェクト作成の時点にて追加する方法
キーとバリューをコロンで区切りつつ書く
注意点
キーバリューペアが1つのみの場合、末尾のカンマ※、をつける必要はない。
キーバリューペアw辞書の作成時に指定する例
尚、辞書は変更可能(ミュータブル)である。それを踏まえたあと、
辞書を作成したあとの、キーバリューペアに追加する構文は以下(エラーになっていたが、本書通りに作成。原因はググって調べよう!)
上記の例は最初の2つのバリューが文字列になっている。次いで最後のバリューは整数(1776)になっている。
注意点
辞書のキーは変更不可能(イミュータブル)でなければならない。
リストや辞書は辞書のキーには使えない。
下記はin演算子を使用する。
特徴
-
特定のキーが辞書のキーに使われているかを確認できる。
-
尚、inにおいて、特定のバリューが辞書のバリューに使われているかどうかを確認できない。
キューバリューペアを辞書か削除する方法
delキーワードを使う
辞書に追加されていないキーを使ったらどうなるのか?
⇛キーを使ってバリューをとりだそうとすると、例外(エラー)が発生させる。
特定の「キー」を辞書に使われているか確認する方法
⇛not in演算子を使用する
not in演算子を使って辞書に特定のキーが使われているか確認する
キューバリューペアを辞書から削除する方法
⇛delキーワードを使用する
P82参照:「辞書を使ったプログラムの例」を写経してみよう
>>数字を入力してください:
と、コンソールされるはずなのだが、Atomでは出力にエラーがでるため割愛。
上記プログラムの辞書の特徴
今回はここまで。ありがとうございました。
誤字脱字・不適当な文章や表現がございましたら、お教え頂ければ幸いです。