icon
icon

Pythonにおけるdict型データへの要素追加方法について現役エンジニアが解説【初心者向け】

初心者向けにPythonにおけるdict型データへの要素追加方法について解説しています。dict(辞書)はkeyとvalueで構成されるコレクションになります。dict型データの基本の使い方、要素を追加する場合の書き方を覚えましょう。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

Pythonにおけるdict型データへの要素追加方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まるでしょう。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

dict型データへの要素追加方法について詳しく説明していくね!

大石ゆかり

お願いします!

目次

 

dictとは

dictとは、Pythonのデータ構造の一つです。

連想配列やハッシュとして、記憶している人もいるでしょう。

また、dictは、keyとvalueのペアコレクションから構成されます。

それぞれのkeyとvalueのペアは、keyと関連する値をマッピングします。

カンマで区切られたkeyとvalueのペアのリストを中括弧 ( { } ) で囲むことで、辞書を定義することが可能です。

コロン ( : ) は、各keyと関連するvalueを分離するために持ち入ります。

なお、辞書型のデータには順番がなく、変更することができます。

また、インデックスを用いてデータを取り出すことも可能であるものの、dict型のデータを更新するたびに順番が変わることに注意が必要です。

 

[PR] Pythonで挫折しない学習方法を動画で公開中

dictの使い方

dictは、keyとvalueの二つの値をペアにしてdict内に保存されています。

そのため、keyを使って検索し、該当するものに対して、valueを使いプログラムを進めるような使い方があります。

例えば、keyでは人間が理解できるようなものをvalueではidなどの他のデータとの連携に使うものです。

dict型ではkeyの名称は重複できないものの、valueの値は重複できます。

どちらに値を入れるかを検討する際の参考にしてみてください。

 

dict型データを作成して要素追加してみよう

要素が一つの場合の追加方法は非常に単純です。

keyを指定してvalueをイコールで指定するものです。

しかし、dictの中に指定したkeyがすでに存在する場合、指定したkeyの値を上書きしてしまいます。

fruit_dict = {'apple': 1, 'lemon': 2}
print(fruit_dict)

fruit_dict['banana'] = 3
print(fruit_dict)

fruit_dict['apple'] = 3
print(fruit_dict)

 

結果

{'apple': 1, 'lemon': 2}
{'apple': 1, 'lemon': 2, 'banana': 3}
{'apple': 3, 'lemon': 2, 'banana': 3}

解説

今回のfruit_dictにはbananaはkeyとして存在しません。

そのため、fruit_dictに追加することができています。

 

一方で、appleは元々keyが存在しています。

そのため、このプログラムでは、元々あった値を上書きしてしまいました。

この上書きを防ぐために使われるのがsetdefaultです。

 

実際に使ってみた結果が以下のとおりです。

fruit_dict = {'apple': 1, 'lemon': 2}
print(fruit_dict)

fruit_dict.setdefault('banana', 3)
print(fruit_dict)

fruit_dict.setdefault('apple', 3)
print(fruit_dict)

 

結果

{'apple': 1, 'lemon': 2}
{'apple': 1, 'lemon': 2, 'banana': 3}
{'apple': 1, 'lemon': 2, 'banana': 3}

解説

先ほどと変わってappleのところで値が上書きされませんでした。

目的に応じて使い分けていくと良いでしょう。

 

要素が複数の場合には一つ一つ追加するのではなく、まとめて追加する方法が便利です。

その際使用されるのがupdateです。

使い方は以下のとおりです。

fruit_dict = {'apple': 1, 'lemon': 2}
vege_dict = {'Tomato': 1, 'Potato': 2}
print(fruit_dict)

fruit_dict.update(vege_dict)
print(fruit_dict)

 

結果

{'apple': 1, 'lemon': 2}
{'apple': 1, 'lemon': 2, 'Tomato': 1, 'Potato': 2}

 

解説

複数の要素を一括で辞書に追加することができました。

使い方も追加したい複数の要素を追加する辞書でupdateを使うだけで可能です。

 

まとめ

今回はdictに要素を追加する方法をまとめてみました。

追加するのは非常に簡単です。

keyを使った検索と合わせて、使いこなせるようになっていくとすっきりしたコードが書けるようになります。

引き続き挑戦してみてください。

 

執筆してくれたメンター

メンターkatoさん

学生時代に数値解析のためにプログラミングを始める。

現在は企業にて専門職として働くかたわら、プログラムを書き業務効率化を図っている。

現在のメイン言語はPython, JavaScript。

また、企業内の希望者にPythonのメンターとして基礎から教えている。

テックアカデミーではJavaScriptを教える。

 

大石ゆかり

Pythonにおけるdict型データへの要素追加方法がよく分かったので良かったです!

田島悠介

ゆかりちゃん、分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でもPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。

挫折しない学習方法を知れる説明動画や現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。