Python

【Python】ディクショナリ(第6回)

ディクショナリについての学習をします。

準備をしよう

下のURLをクリックして、「paiza.IO」を開いてください。
https://paiza.io/ja/projects/new

学習内容

ディクショナリとは

ディクショナリとは、要素に「キーと値」をセットにして入れるリストです。

例えば、ある人の情報をリストとしてまとめて扱うとき、何番目にどの情報を入れたかが分からなくなりやすいです。そこで、データをキーとセットで入れておくと、取り出すのが簡単になります。

普通のリストとの違いは、インデックスを「0」「1」「2」という数値だけではなく、「”name”」「”age”」「”hobby”」のように文字列でも指定できるところです。

こうすることで、そのデータが何番目に入っているかを意識することなく、取り出すことができます。

ディクショナリの初期化

ディクショナリの初期化を行います。

書き方

以下のように書きます。

  1. 右辺を{}の記号で囲みます。これでディクショナリを生成する、ということになります。
    ※ リストは[]の記号でしたが、ディクショナリは{}の記号です。
  2. キーと値をセットで書きます。

具体的に見ていきましょう。例えば、ある人の情報をまとめるディクショナリ「person」を作る場合、次のようになります。

  1. {}の記号でディクショナリが生成します。
  2. 「”name”」というキーにしています。※キーに文字列を設定する場合、「”〇”」(ダブルもしくはシングルクォート)が必要です。
  3. 「”name”」のキーに「”taro”」の値を設定しています。

これで、名前は”taro”、年齢は28、趣味は”music”、という意味をもつディクショナリを生成して、変数「person」に保存することができました。

練習

paiza.IOに、以下のコードを入れて下さい。

person = {
    "name": "taro",
    "age": 28,
    "hobby": "music"
}

要素の取得

ディクショナリ内の要素を取得するためには、以下のように書きます。

先ほどのディクショナリ「person」の”taro”を取得ときは、下のように書きます。

「person」の「”name”」、意味としても分かりやすいですね。

それでは、この要素を表示してみます。print()を使います。

書き方

以下のように書きます。

  1. 「print()」で、()内のデータをコンソール画面に表示します。
  2. 「ディクショナリ[キー]」で要素が取得できます。「”name”」キーには「”taro”」が入っているので、「taro」と表示されます。
練習

paiza.IOに、以下のコードを入れて下さい。

print(person["name"])
実行結果

コードを実行してみましょう。

taro

※ person[“age”]、person[“hobby”]も確認してみて下さい。

要素の追加

すでにあるディクショナリに要素を追加します。

書き方

以下のように書きます。

先ほどのリスト「person」に新しく「”height”」(身長)という要素を追加してみましょう。

練習

paiza.IOに、以下のコードを入れて下さい。

person["height"] = 170
print(person)
実行結果

コードを実行してみましょう。

{'name': 'taro', 'age': 28, 'hobby': 'music', 'height': 170}

「’height’: 170」の要素が追加されているのが分かります。

要素の削除

ディクショナリから要素を削除します。

書き方

以下のように書きます。

先ほどのリスト「person」から「”hobby”」の要素を削除してみましょう。

練習

paiza.IOに、以下のコードを入れて下さい。

del person["hobby"]
print(person)
実行結果

コードを実行してみましょう。

{'name': 'taro', 'age': 28, 'height': 170}

「’hobby’: ‘music’」の要素が削除されているのが分かります。

コード全体

練習
person = {
    "name": "taro",
    "age": 28,
    "hobby": "music"
}
print(person["name"])

person["height"] = 170
print(person)

del person["hobby"]
print(person)
実行結果
taro
{'name': 'taro', 'age': 28, 'hobby': 'music', 'height': 170}
{'name': 'taro', 'age': 28, 'height': 170}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

まとめ

以上になります。今回はディクショナリについてお伝えしました。

ディクショナリはリスト同様、よく使われます。ここに上げたものは基本的な使い方なので、概念が理解できたら応用的なものにチャレンジしてみて下さい。

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