Pythonを使って初めて辞書データという言葉を知りました。
呼び方は違えど他のプログラミング言語でも辞書構造を持つデータはありますね。
例えばJavaならマップ, Rubyならハッシュ, JavaScriptであればオブジェクトと言い換えられます。
今回は辞書データとその基本的な使い方について紹介します。
辞書データとは
辞書データとはキー(Key)とバリュー(Value)で対応付けられたデータを指します。
pythonではキーとバリューのセットを辞書と呼び、{}
を使って定義できます。
{
キー:バリュー
}
バリューは基本的にどんな型のデータでも入れられます。文字列や数値、小数はもちろん可能です。
一方でキーには途中で値が変わるリストや辞書は入れられません。
辞書を複数個用意したいときは,(カンマ)
で繋ぎましょう。
辞書データを定義する
辞書データを定義しました。
それぞれの数字にトレーニングメニューが紐づいてますね。
複数の辞書を用意したかったので,(カンマ)
で繋げました。
配列はバリューには入れられますが、キーに入れるとエラーになりました。
キーには途中で値が変わってしまうデータは入れられませんでしたよね。
キーを指定してバリューを取得する
トレーニングメニューがちゃんと対応付いているか確認しましょう。
1と指定したときにベンチプレスと表示できれば対応付いたと言えますね。
辞書型でキーを指定するときは[]
を使います。
リストでインデックスを指定するときと一緒ですね。
辞書データ[キー]
バリューを更新する
最初に定義したバリューは更新できます。
更新は既存のキーに新しいバリューを代入します。
辞書データ[キー] = 新しいバリュー
2のレッグプレスをスクワットに更新しましょう。
キーとバリューを追加する
途中でキーとバリューを追加できます。
追加するときは新しいキーにバリューを代入します。
辞書データ[新しいキー] = 新しいバリュー
4つ目にダンベルカールを追加しましょう。
値からキーは取得できるか?
辞書に値を指定してキーを取得できました。では値を指定してキーを取得できるでしょうか?
残念ながらできなさそうですね。
辞書に指定できるのは必ずキーと覚えておきましょう。
キーが辞書にあるか確認する
いまは辞書が3,4個なのでどんなキーが使われているか把握できますが、これが100個以上あるとキーを探すのもひと苦労ですよね。
そんなときは演算子in
を使いましょう。
キー in 辞書データ
1がキーとして使われいるか確認します。
使われているときはTrue
が表示されました。
使われていないとFalse
が表示されますね。
辞書を削除する
これまで更新や追加を紹介しましたが削除もできます。
削除はこのように書きます。
del 辞書データ[削除したいキー]
1:'ベンチプレス'
の辞書を削除しましょう。
まとめ
今回は辞書データとその基本操作について紹介しました。{}
で定義ができるので使いやすいですね。
Javaだとその都度データの型を明示しなければならないためコード量が多くなりがちでしたがpythonはスッキリと書けて見やすいなと思いました。
辞書データはよく使うデータ構造なので基本的な使い方は覚えておきましょう。