01 / 06
番号では意味が分からない
リストは値を順番に並べて持てた。でも ["ゆい", 15] を見て、15 が何の数かすぐに分かるかな。
年齢? 点数? 身長? 番号で取り出す入れ物は、中身の意味を覚えておくのが自分の仕事になってしまうんだ。
hito = ["ゆい", 15]print(hito[0])print(hito[1])実行結果
ゆい 15
くり返しとデータの持ち方
INPUT · スライド
01 / 06
リストは値を順番に並べて持てた。でも ["ゆい", 15] を見て、15 が何の数かすぐに分かるかな。
年齢? 点数? 身長? 番号で取り出す入れ物は、中身の意味を覚えておくのが自分の仕事になってしまうんだ。
hito = ["ゆい", 15]print(hito[0])print(hito[1])実行結果
ゆい 15
02 / 06
そこで使うのが 辞書(ディクショナリ)。{} の中に 名前: 値 の組をカンマで並べるよ。
取り出すときは番号のかわりに名前をカッコに入れる。hito["namae"] と書けば、何を取り出しているのか一目で分かるね。
hito = {"namae": "ゆい", "toshi": 15}print(hito["namae"])print(hito["toshi"])実行結果
ゆい 15
03 / 06
辞書の言葉を覚えよう。
"namae" の部分"ゆい" の部分キーと値はいつも組で入っている。「キーで値を引く」——これが辞書のすべてだよ。
mise = {"namae": "パンや", "nedan": 150}print(mise["nedan"])実行結果
150
04 / 06
辞書をそのまま print すると、中身が全部出てくる。並ぶのは書いた順のままだよ。
ただし文字が ' で囲まれて出てくる。自分は " で書いたのに、なぜ? これは Python が中身を見せるときの流儀で、中身が変わったわけではないんだ。いまは気にしなくていいよ。
hito = {"namae": "ゆい", "toshi": 15}print(hito)実行結果
{'namae': 'ゆい', 'toshi': 15}05 / 06
辞書に無いキーを引くと、Python は KeyError を出して止まる。
リストで範囲の外を指したときと同じで、「無いものは無い」とはっきり教えてくれるんだ。だまって None を返したりはしないよ。
hito = {"namae": "ゆい"}print(hito["shumi"])実行結果
KeyError: 'shumi'
06 / 06
値には文字でも数でも True でも None でも入れられる。種類がそろっていなくていいのが辞書の気楽なところだよ。
中身が何も無い辞書は {} と書く。空から始めてキーを足していく使いかたは、次のレッスンでやるよ。
mise = {"namae": "パンや", "nedan": 150, "eigyou": True}print(mise["eigyou"])print({})実行結果
True
{}