基本
{} にキーと値のペアを入力して作成します。
{キー1: 値1, キー2:値2, キー3:値3}
test_dict = {"a": 1, "b": 2, "c": 3}
print(test_dict)
# {'a': 1, 'b': 2, 'c': 3}
値を取得するためには、キーを指定します。
test_dict = {"a": 1, "b": 2, "c": 3}
print(test_dict["a"])
# 1
get()を使用て値を取得することも可能です。
test_dict = {"a": 1, "b": 2, "c": 3}
print(test_dict.get("d"))
# None
print(test_dict.get("d", 10))
# defaultの値が返される
# 10
dict()
dictの基本的な使い方
dict()を使用して辞書を作成する方法になります。
引数にキーと値のペアを = でつないで作成
test_dict = dict(a=1, b=2, c=3)
print(test_dict)
# 1
リストを辞書に変換する方法
要素がキーと値のペアになっているイテラブル(リストやタプルやセット)の場合、dict() にわたすだけで、変換が可能です。
test_list = [("a", 1), ("b", 2), ("c", 3)]
test_dict = dict(test_list)
print(test_dict)
# {'a': 1, 'b': 2, 'c': 3}
print(test_dict["b"])
# 2
2つのイテラブルを辞書に変換する方法
zip()を使用することで、2つのイテラブルの一方をキーに、他方を値にして辞書にすることが可能です。
test_list1 = ["a", "b", "c"]
test_list2 = [1, 2, 3]
test_dict = dict(zip(test_list1, test_list2))
print(test_dict)
# {'a': 1, 'b': 2, 'c': 3}
値の更新方法
辞書オブジェクト[キー] = 値 で要素の追加、更新が可能です。
存在しないキーの場合には、新たな要素が追加され、存在するキーをしていすると、値が更新されます。
test_dict = {"a": 1, "b": 2, "c": 3}
test_dict["a"] = 4
print(test_dict)
# {'a': 4, 'b': 2, 'c': 3}
test_dict["d"] = 5
print(test_dict)
# {'a': 4, 'b': 2, 'c': 3, 'd': 5}
辞書のマージ
update()に別の辞書オブジェクトを指定すると、その要素が追加されます。
test_dict = {"a": 1, "b": 2, "c": 3}
test_dict2 = {"x": 10, "y": 20, "z": 30}
test_dict.update(test_dict2)
print(test_dict)
# {'a': 1, 'b': 2, 'c': 3, 'x': 10, 'y': 20, 'z': 30}
既存のキーと重複する場合には、引数に指定した辞書の値で更新されます。
test_dict = {"a": 1, "b": 2, "c": 3}
test_dict2 = {"a": 4, "b": 5}
test_dict.update(test_dict2)
print(test_dict)
# {'a': 4, 'b': 5, 'c': 3}
for文で辞書の内容を取得する方法
keys() を使用することで key の値が取得可能です。
test_dict = {"a": 1, "b": 2, "c": 3}
for k in test_dict.keys():
print(k, end="")
# a
# b
# c
values() を使用することで value の値が取得可能です。
test_dict = {"a": 1, "b": 2, "c": 3}
for v in test_dict.values():
print(k, end="")
# 1
# 2
# 3
items() を使用することで各要素の key と value が取得可能です。
test_dict = {"a": 1, "b": 2, "c": 3}
for k, v in test_dict.items():
print(k, v)
# a 1
# b 2
# c 3
コメント