目次
[dictionary]とは?
こんにちは、リバティエンジニア[?]のFUNAです。 現役エンジニアとしてアプリケーション開発やWeb制作、SEOやブログ運営をしています。
今回は、Pythonの"dictionary"についてみていきます。
"dictionary"とは、任意のオブジェクトを複数個格納することができるものとなっています。
dictionaryについて
dictionaryとは、「"キー"と"値"を組み合わせた辞書( dictionary )」のことです。
この辞書を使うことで、特定の要素を検索したり、追加や削除も簡単に実装することができます。
辞書型はリスト型に比べるとやや複雑ではありますが、覚えることで目的に沿ったコードを便利に書くことが出来ます♪
辞書(dictionary)型は、「{}」の中に"key"と"value"の組み合わせが含まれており、データ管理することができます。
{key1:value1,key2:value2,key3:value3}
このように、要素は"key"と"value"をコロン( : )で区切って構成します。
またそれぞれのペアはカンマで区切って複数の要素を保持することもできます。
辞書型オブジェクトの作り方
辞書型オブジェクトを作る時には、要素を {} 内に書きます。
ちなみにオブジェクトとは、class型から作られたインスタンスのことを指しています。
class型って何ですか?
それを知るにはclassについても知らなければなりません。
話すと長くなってしまうので、次回お話ししますね♪
今回はいったん”モノ”だと思っておいてください。
では作り方のサンプルコードを見ていきましょう。
# 辞書型のオブジェクト宣言
myDictionary = {"apple":1, "orange":2, "banana":3}
こう宣言することで"myDictionary"という辞書型のオブジェクトが完成します。
辞書型の要素にアクセスする方法は?
辞書型のオブジェクトは、”リスト型”のように複数の要素を持つことができます。
ですが、”リスト型”と違って、辞書型オブジェクトには順序という概念はありません。
なので、要素を取り出す時には”key”というものを使うことになります。
# 辞書型のオブジェクト宣言
myDictionary = {"apple":1, "orange":2, "banana":3}
val = myDictionary["apple"]
print(val)
# 実行結果 [ 1 ]
このように"myDictionary"という辞書型のオブジェクトの”Key”である"apple"を指定して要素に7アクセスできます。
また、注意する点として
- 要素へのアクセスは「{}」ではなく「[]」を使う。
- 存在しないkeyを指定するとエラーが発生する
ということです。
辞書型を検索する方法は?
次に辞書型の要素を検索する方法について見ていきましょう。
in演算子を使う方法
辞書の中からある特定の要素を取り出したい場合には、"in演算子"と"keysメソッド"、"valuesメソッド"を使うことができます。
辞書型の"keysメソッド"を使うことによって、辞書の中からマッチする"key"を検索することができます。
# 辞書型のオブジェクト宣言
myDictionary = {"apple":1, "orange":2, "banana":3}
print("orange" in myDictionary.keys())
"keysメソッド"を使った検索の方法はこのようになります。
指定した辞書型オブジェクトに含まれているすべての”key”をリスト型として返すことができます。
そして”in演算子”を使うことで、”orange”という”key”がそのリストに含まれているのかどうかを確認します。
サンプルコードで見てみると、orangeはmyDictionaryの中に存在するため結果は”True”と表示されました。
検索の方法にはもう一つあります。
それは、辞書型のvaluesメソッドを使う方法です。
# 辞書型のオブジェクト宣言
myDictionary= {"apple":1, "orange":2, "banana":3}
print(5 in myDictionary.values())
”valuesメソッド”を使った検索方法はこうなります。
”valuesメソッド”は、指定した辞書型オブジェクトに含まれているすべての”value”をリスト型として返すことができます。
”in演算子”を使うことで、[ 5 ]という値がリストに含まれているかどうかを検索します。
[ 5 ]はmyDictionaryの中に存在しないので、結果は"False"と表示されます。
辞書型に要素を追加する方法
辞書型は、既に作成したオブジェクトに、新しい要素を追加することも出来ます。
myDictionary = {"apple":1, "orange":2, "banana":3}
# 辞書型に要素を追加する
myDictionary["peach"] = 4
このように"key"を指定してその"key"に"value"を代入することで、新しく要素を追加することができます。
辞書型の要素を削除する方法
最後に、辞書型のオブジェクトの要素を削除するやり方を紹介します。
要素の削除には2つの方法があります。
- popメソッドを使う方法
- clearメソッドを使う方法
まずは、popメソッドを使った方法を見ていきましょう。
myDictionary= {"apple":1, "orange":2, "banana":3}
myDictionary.pop("orange")
print(myDictionary)
このように辞書型を宣言した後に、削除したい項目のKeyを”popメソッド”の引数に指定することで、その要素を削除することができます。
次に、clearメソッドを使って要素を削除する方法です。
myDictionary= {"apple":1, "orange":2, "banana":3}
myDictionary.clear()
print(myDictionary)
この”clearメソッド”を使うと辞書型のすべての要素を削除することができます。
まとめ
今回は、PythonでDictionaryという辞書型のオブジェクトについて、作成の仕方や検索、追加、削除などをサンプルコードと一緒に紹介しました。
この"dictionary"はループ処理などで使用することが多く、処理が簡潔化され、便利になるので是非基本を押さえて活用してください。
Pythonでのループ処理についても書いている記事があるのでよかったら見ていってください。
Pythonで繰り返し処理を実装する~for文, while文~