Python基礎として、「辞書オブジェクト」(連想配列)というものがあります。
Pythonでデータを登録したい場合に、辞書オブジェクトを使えると便利です。
本記事では、そんなPython基礎となる辞書の作成方法とその編集方法について、詳しくご説明します。
辞書
Pythonでは、任意のデータに対応する関連データを登録できる仕組みとして、「辞書オブジェクト」(連想配列)があります。
そんな辞書の作成方法や編集方法について、順番にご説明します。
辞書の作成
たとえば、任意のデータとして「dog」を、それに対応する関連データとして「犬」を辞書として登録することを考えます。
この辞書を検索する際の指定データ「dog」のことを辞書のキーと呼びます。
また、キーに対応する結果データ「犬」のことを辞書の値と呼びます。
辞書は、{}(波括弧)で作成し、{キー:値}で登録します。
辞書の作成例を以下にご紹介します。
#input
dictionary = {"犬":"dog", "猫":"cat","鳥":"bird"}
上の例のように、キーと値の組をカンマで区切って作成します。
これを出力すると、以下のようになります。
print(dictionary)
#output
{'犬': 'dog', '猫': 'cat', '鳥': 'bird'}
辞書オブジェクトを参照する場合には、以下のように[](角括弧)で指定します。
{}(波括弧)ではないので、注意しましょう。
リストの参照のように、インデックスで指定するのではなく、参照する要素のキーで指定します。
#input
print(dictionary["猫"])
#output
cat
複数を参照する場合には、以下のようになります。
#input
print(dictionary["猫"],dictionary["鳥"])
#output
cat bird
辞書の編集
辞書オブジェクトに要素を追加するのは、変数の代入と同じ形式です。
以下に要素を追加した例をご紹介します。
#input
dictionary = {"犬":"dog", "猫":"cat","鳥":"bird"}
print("before:",dictionary)
dictionary["魚"]="fish"
print("after:",dictionary)
#output
before: {'犬': 'dog', '猫': 'cat', '鳥': 'bird'}
after: {'犬': 'dog', '猫': 'cat', '鳥': 'bird', '魚': 'fish'}
「dictionary[“魚”]=”fish”」で、辞書「dictionary」にキー:魚、値:fishの要素を追加しています。
追加後の辞書には、上記要素が追加されていることが分かります。
一方で、既に設定されている要素の置き換えも、変数の代入と同じ要領で行うことができます。
以下に要素置き換えの例を挙げます。
#input
dictionary = {"犬":"dog", "猫":"cat","鳥":"bird"}
print("before:",dictionary)
dictionary["犬"]="doggy"
print("after:",dictionary)
#output
before: {'犬': 'dog', '猫': 'cat', '鳥': 'bird'}
after: {'犬': 'doggy', '猫': 'cat', '鳥': 'bird'}
「dictionary[“犬”]=”doggy”」で、キー「犬」の値をdogからdoggyに置き換えています。
次に、辞書に登録済の要素を削除したい場合には、del文を使用します。
以下に要素削除の例を挙げます。
#input
dictionary = {"犬":"dog", "猫":"cat","鳥":"bird"}
print("before:",dictionary)
del dictionary["猫"]
print("after:",dictionary)
#output
before: {'犬': 'dog', '猫': 'cat', '鳥': 'bird'}
after: {'犬': 'dog', '鳥': 'bird'}
「del dictionary[“猫”]」で、キー「猫」の要素を削除しています。
辞書の要素数を調べるためには、len()関数を使用します。
len()関数の使用例を以下に載せます。
#input
dictionary = {"犬":"dog", "猫":"cat","鳥":"bird"}
print(len(dictionary))
#output
3
辞書の検索
辞書を検索する際、指定したキーが登録されているかどうかを確認するのに使用するのがin演算子です。
in演算子を使用した場合、指定したキーが登録されていればTrue(真)を、登録されていなければFalseを返します。
以下に具体例を紹介します。
#input
dictionary = {"犬":"dog", "猫":"cat","鳥":"bird"}
print("猫" in dictionary)
print("馬" in dictionary)
#output
True
False
「猫」は登録されているため、Trueが返され、「馬」は登録されていないため、Falseが返されています。
応用として、以下のようなプログラムも作成できます。
#input
dictionary = {"犬":"dog", "猫":"cat","鳥":"bird"}
key = input("search:")
if key in dictionary:
print(dictionary[key])
else:
print("未登録です。")
serch:犬
#output
dog
入力したキーが登録されていれば、その値を出力するプログラムになっています。
登録されていないキーの場合、以下のように「print(“未登録です。”)」が実行されます。
serch:牛
#output
未登録です。
まとめ
この記事では、Python基礎となる辞書の作成方法と編集方法について、ご説明しました。
本記事を参考にして、ぜひ辞書オブジェクトをマスターしてください。
参考
Python学習用おすすめ教材
Pythonの基本を学びたい方向け
統計学基礎を学びたい方向け
Pythonの統計解析を学びたい方向け
おすすめプログラミングスクール
Pythonをはじめ、プログラミングを学ぶなら、TechAcademy(テックアカデミー)がおすすめです。
私も入っていますが、好きな時間に気軽にオンラインで学べますので、何より楽しいです。
現役エンジニアからマンツーマンで学べるので、一人では中々続かない人にも、向いていると思います。
無料体験ができますので、まずは試してみてください!