python入門講座 | dict型の使い方3(要素を取り出す方法)[第30回]

アラサーOLのためのpython入門講座
dict型変数ではkeyを使って値を参照することができます。

Ciao!みなさんこんにちは!このブログでは主に
(1)pythonデータ解析,
(2)DTM音楽作成,
(3)お料理,
(4)博士転職
の4つのトピックについて発信しています。

今回は「アラサーOLのためのpython入門講座」です!この講座では、プログラミング初心者アラサーOLのMi坊さんに、pythonを学習する上でのアドバイスを行います!「パソコンもプログラミングも初心者だけど、プログラミングができるようになりたい!」という方のためにstep-by-stepで解説していきます。

今日はdict型(=辞書型)変数に格納された要素を取り出す方法を解説します。dict型の要素は[](四角カッコ)を使って「変数[key]」という形で取得できます。四角カッコを使うのはlist型と同じですが、indexではなくkeyを使います。

この記事を読めば、dist型変数の要素を取り出す方法を知ることができます。ぜひ最後までお付き合いください!

Kaiko
Kaiko

この記事はこんな人におすすめ

  • 初心者だけどpythonを始めた!
  • pythonの基本的な使い方を知りたい!
  • 独学で学んだpythonの知識を整理したい!

Abstract | keyを使って要素を取り出すdict型

dict型変数に格納された値はkeyを使って参照、つまり取り出すことができます。同じように複数要素を格納できるlist型の変数では、要素を取り出すときにはindexと呼ばれる整数値を使いました。これは先頭からの順番で住所のようなものです。今回のdict型では順番は関係がなく、keyを使います。keyはdict型変数を作成する際に自分で決めた文字列や整数値です。わかりやすいkeyを使うことで値の参照が楽になります。



Background | dict型(辞書型)の概要

dict型はlist型と同様、一つの変数に複数の値を格納することができる変数の型です。日本語では「辞書型」と呼ばれますが、本稿ではdict型と呼びます。dict型は、複数の値を格納することができる配列タイプの変数の中では、格納できる値の数やtypeが自由に設定できる柔軟な変数です。配列タイプの変数の種類と特徴についてはこちらの記事を参照ください→「python入門講座 | 配列タイプ変数の種類と特徴(リスト, NumPy配列, DataFrameなど)」。

dict型の主な特長は

  1. keyを使って値を格納、参照できる (list型と異なる)
  2. どんな型の値や変数でも格納できる (list型と同じ)

の2つです。list型と異なり、格納された値の順番に意味はないため、どの位置にどの値が入っているかを覚えておく必要がありません。わかりやすいkeyで値を格納しておけば、後でスムーズに参照することができます。dict型変数の特徴について、詳しくはこちらの記事をご参照ください→「python入門講座 | dict型の使い方1(辞書型の特長とlist型との違い)」。

今回はdict型変数の要素(格納された値)を取り出す方法を解説します。dict型変数を作成する方法については前回記事「python入門講座 | dict型の使い方2(変数を作成する方法)」をご参照ください。



Method | dict型変数の要素を取り出す方法

dict型変数を要素を取り出す方法を解説します。実際に手を動かしながら学んでいきましょう!Jupyter Notebookを立ち上げてコーディングしながら読み進めてください。練習問題の後にコーディング例も掲載しますので、やってみてどうしてもわからなければそれを見て進めてみてください。

準備 | python notebookの新規作成

まずはpython notebookを用意しましょう。いつものpython_practiceのディレクトリに「practice_dict_value」という名前のpython notebookを作成してください。ターミナルを立ち上げて~/python_practiceに移動、jupyter notebookを起動し、ブラウザから新規→Python3でpython notebookを開いて、ファイル→リネームでファイル名を決定します。
もしやり方がわからなければ、過去記事「python入門講座|pythonを使ってみよう2(Jupyter Notebookを使う方法)」で詳しく解説しているので、これを見ながらやってみてください。

python notebookを起動したら、適宜Markdownセルに説明書きを加えながら下記の説明に沿ってコードを書いて実行していきましょう。Markdownセルやコードセルなどの用語やこれらの使い方についても、過去記事「python入門講座|pythonを使ってみよう2(Jupyter Notebookを使う方法)」を参照してください。練習問題の後にpython notebookの例を掲載します。もし書き方がわからなければそちらを見てください。



dict型変数の要素を取り出す方法 | keyで値を取得

dict型変数は

変数名[key]

という形で、[](四角括弧)を使って作成します。四角括弧の中にkeyを書くことで格納された値を参照することができます。四角括弧を使うのは list型と同じです。list型ではindex(順番)で値を参照するのに対し、dict型ではkeyで参照します。

dict型変数の要素を取り出す例1 | 文字列をkeyとする場合

dict型変数の要素を取り出してみましょう。まずは文字列をkeyとする例です。以下のように、国名をkey、首都名を値として変数を作成し、それぞれの値をprint文で出力してください。

# define a dict variable
capital_cities = {'Japan': 'Tokyo', 'France': 'Paris', 'Germany': 'Berlin'}

# get the capital of Japan
print('Capital of Japan:', capital_cities['Japan'])

# get the capital of Frace
print('Capital of France:', capital_cities['France'])

# get the capital of Germany
print('Capital of Germany:', capital_cities['Germany'])

実行すると、

Capital of Japan: Tokyo
Capital of France: Paris
Capital of Germany: Berlin

と出力されます。この例では変数名が「capital_cites」、keyが国名なので

capital_cites[国名]

のようにして要素を取り出すことができます。



dict型変数の要素を取り出す例2 | 整数値をkeyとする場合

例をもう一つみてみましょう。今度はkeyを整数値(int型)とする場合です。keyが整数値なので、値を参照するときにはあたかもlist型であるかのようにコーディングすることができます。以下のように、エヴァンゲリオンパイロットを値、機体番号をkeyとして変数を作成し、0号機のパイロット名を表示してください。

# define a dict variable with int-type keys
eva_pilots = {0:'Rei', 1:'Shinji', 2:'Aska'}

# print 0-th element of the variable
print('Pilot for Eva-0:',  eva_pilots[0])

実行結果は

Pilot for Eva-0: Rei

となります。

list型の変数を使った場合と比較してみましょう。list型を使う場合は以下のようにします。

# define a list variable
eva_pilots = ['Rei', 'Shinji', 'Aska']

# print 0-th element of the variable
print('Pilot for Eva-0:',  eva_pilots[0]) # same as the dict case

最後のprint文で出力するところで要素を取り出しています。前述の整数値をkeyとするdict型のときと全く同じ書き方となっています。変数をlist型で作成することもできるけれども、欠番が存在する場合などには整数値をkeyとするdict型のほうが都合が良いことがあります。そのような場合にはdict型を使うことができます。



Result | 練習問題

練習問題をやってみましょう。以下の処理を行うコードを書いてみましょう。

  1. dict型変数prefectural_capitalsを、以下のkeyと値で作成してください。
    • key1: Hokkaido, 値1: Sapporo
    • key2: Kanagawa, 値2: Yokohama
    • key3: Okinawa, 値3: Naha
  2. 変数prefectural_capitalsを用いて、”The prefectural capital of Hokkaido is Sapporo.”と出力してください。
  3. 変数prefectural_capitalsを用いて、”The prefectural capital of Kanagawa is Yokohama.”と出力してください。
  4. 変数prefectural_capitalsを用いて、”The prefectural capital of Okinawa is Naha.”と出力してください。



練習問題の回答例

練習問題の回答が完成したら回答例を確認しましょう!下の画面をスクロールすると回答例が見られます!参考にしてみてください。また、今回の記事で出てきた他のコードも載っているので参考にしてください!

練習問題おつかれさまでした!
今日はここまでです。Python Notebookを終了しておきましょう。もしPython Notebookを終了方法がわからなければ過去記事「python入門講座|pythonを使ってみよう2(Jupyter Notebookを使う方法)」の「Python Notebookの起動・終了方法」の章を参照してください!



Conclusion | まとめ

最後までご覧いただきありがとうございます!
今回はdict型変数の要素を取り出す方法を解説しました。dict型を作成する際にわかりやすいkeyで値を格納しておけば、簡単に取り出すことができます。実際に様々なコードを書いていくことでコツを掴むことができます!pythonプログラミングのレベルアップをしていきましょう!

以上「python入門講座 | dict型の使い方3(要素を取り出す方法)」でした!
またお会いしましょう!Ciao!



References | 参考

以下の教科書を参考にして進めています!より詳しく学びたい方は購入して読んでみてください!

Pythonの参考教科書

コメント

タイトルとURLをコピーしました