Pythonのディクショナリの仕組みと使い方のサンプルです。(確認環境:Python 3)
目次
ディクショナリ
変数 = { キー1:値1 , キー2:値2 , キー3:値3 , ... ] |
-
1つの変数で複数の「キー」と「値」を保持できます。→各項目を要素(element)といいます。
- キーは、数値や文字列を使用できます。
- 値は、数値や文字列やリストなども使用できます。
- 順序は保証されません。
- ディクショナリは辞書とも呼ばれます。他言語での連想配列です。
- 以下はPythonの公式ドキュメントのディクショナリのリンクです。
https://docs.python.jp/3/tutorial/datastructures.html#tut-dictionaries
要素に初期値をセットする
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
print (a) # {'c1': '赤', 'c2': '黄', 'c3': '青'}
3行目は、ディクショナリとして、変数に初期値をセットしています。
キーと値を波括かっこで括っています。
7行目は、変数の値を表示しています。
キーを指定して値を取得する
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
print (a["c1"]) #赤
print (a.get("c2")) #黄
7,8行目は、ディクショナリのキーを指定して値を表示しています。
キーと値をすべて取得する(for文)
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
for key in a:
print(key,a[key]) #c1 赤 c2 黄 c3 青
7行目は、for文でキーと値をすべて取得しています。
キーの集合を取得する(keys)
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
for b in a.keys():
print(b) #c1 c2 c3が出力される
7行目は、ディクショナリのキーの集合を取得しfor文でキーを表示しています。
値の集合を取得する(values)
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
for b in a.values():
print(b) #赤 黄 青が出力される
7行目は、ディクショナリの値の集合を取得しfor文で値を表示しています。
指定のキーがあるか真偽値を返す(in)
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
if ('c2' in a):
print ("存在します") # 存在しますと出力される
if ('c5' in a):
print ("あり") # 出力されない
7行目は、in演算子でキーを指定して存在を確認しています。存在するのでtrueです。
10行目は、指定のキーが存在しないのでFalseです。
要素数を取得する(len)
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
print (len(a)) # 3
7行目は、len関数で要素数を取得しています。
要素を追加する
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
a["c4"] = "オレンジ"
print (a) # {'c1': '赤', 'c2': '黄', 'c3': '青', 'c4': 'オレンジ'}
7行目は、キーと値を指定して要素を追加しています。
要素の値を変更する
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
a["c2"] = "緑"
print (a) # {'c1': '赤', 'c2': '緑', 'c3': '青'}
7行目は、キーを指定して要素の値を変更しています。
要素を削除する (del)
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
del a["c2"]
print (a) # {'c1': '赤', 'c3': '青'}
7行目は、del文でキーを指定して要素を削除しています。
要素を削除する+削除した要素を取得する(pop)
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
b = a.pop("c2")
print (a) # {'c1': '赤', 'c3': '青'}
print (b) # 黄
7行目は、popメソッドでキーを指定して要素を削除しています。
またpopメソッドは削除した値を返します。11行目は削除した値が表示されます。
ディクショナリをリストにする
# coding: utf-8
a = {"c1":"赤",
"c2":"黄",
"c3":"青"}
b = list(a.keys())
print (b) # ['c1', 'c2', 'c3']
c = list(a.values())
print (c) # ['赤', '黄', '青']
d = list(a.items())
print (d) # [('c1', '赤'), ('c2', '黄'), ('c3', '青')]
7行目は、取得したキーをリストにしています。
10行目は、取得した値をリストにしています。
13行目は、取得したキーと値をリストにしています。
関連の記事
Python リストの仕組みと使い方のサンプル(list)
Python タプルの仕組みと使い方のサンプル(tuple)
Python セットの仕組みと使い方のサンプル(set)