Chatpter.1 - 辞書とは
辞書とは
{キー1: 値, キー2: 値, ・・・}
一意のキーと、そのキーが持つ値をペアとしたデータ構造です。😺❓
-
こんな風に書きます。
profiles = {'一穂': 24, 'ひかげ': 16, 'れんげ': 7}
'一穂': 24
で1つの要素となっています。 要素とは言いますが、リストとは違って要素番号はありません。
辞書の場合は要素番号の代わりに「キー」で値を扱います。そのため、
-
キーは一意でなければならず、キーの重複を許しません。
1つの辞書の中に、2つ以上の同じキーがあってはいけませんということです。
リストの要素番号も 0 から順に一意の番号が振られていました。それと同じです。
要するに、リストでは見えなかった要素番号を見えるようにしたものが辞書のキーです。
その上、数値だけでなく、文字列なども使えますし、何より順番が決まっていません。
とても自由度が高いです。
リストの場合は要素番号で管理しているために、求める値がどこにあるかを把握していないとわかりませんでした。
辞書の場合は、添字にキーを指定するだけで、求める値がどこにあっても見つけることができます。
ちょっとしたデータベースです。(じゅうぶん立派です)
辞書は
{ }
の中にキー: 値
をペアに、カンマ,
で区切って入れていきます。キー
と値
の間にコロン:
をはさみます。
-
まだよく意味がわからないと思います。
profiles = {'一穂': 24, 'ひかげ': 16, 'れんげ': 7}
を例に説明すると、
'一穂'
は、24
という値を持っている。'ひかげ'
は、16
という値を持っている。'れんげ'
は、7
という値を持っている。-
一応それぞれの値は年齢を指しているつもりですが、各キーから値を見てみると、
profiles = {'一穂': 24, 'ひかげ': 16, 'れんげ': 7} sisters_age1 = profiles['一穂'] # ← 添字が独特 sisters_age2 = profiles['ひかげ'] sisters_age3 = profiles['れんげ'] print(sisters_age1) print(sisters_age2) print(sisters_age3)
24
16
7
実際に見てみてください!
リストの要素番号が、そのままキーに置き換わっただけです。
「値を見る」だけなら、添字の所をキーにするだけなので扱いは簡単かと思います。
それ以外のほとんどがリストとは異なりますので、リストとは別に新しく学ぶことになります。
「辞書」のことを、もともとは『連想配列』と言います。
Pythonでは「辞書」と言っていますが、同じものです。
ここでも Python流に倣って「辞書 (辞書型)」という言葉を使っていきます。