dictとは
dictは、キー(Key)と値(Value)のペアによる辞書構造です。キーは一意でイミュータブル(変更不可)。
dictの作成
dictは色々な方法で作成できるので、ここでまとめておきます。
波括弧でKey/Valueペアを指定
d = {}
d = {'Paul': 100, 'Tom': 120, 'Taro': 142}
print(d)
# {'k1': 1, 'k2': 2, 'k3': 300}
d = {'Paul': 100, 'Tom': 120, 'Taro': 142, 'Taro': 150}
# keyが重複すると上書きされる
print(d)
# {'Paul': 100, 'Tom': 120, 'Taro': 150}
Dictのコンストラクタを使う
d = dict(Dog = 10, Cat = 20, Godzilla = 30)
print(d)
# {'Dog': 10, 'Cat': 20, 'Godzilla': 30}
listから作成する
animals = [['Cat',10], ['Dog',12], ['Godzilla',220]]
d = dict(animals)
print(d)
# {'Cat': 10, 'Dog': 12, 'Godzilla': 220}
dictを結合して新しいdict
二つのdictをコンストラクタにアンパックして渡すことで新しいdictを作成できます。ただし使えるのはPuthon3.5以降。
d1 = {'k1': 1, 'k2': 2}
d2 = {'k3': 3, 'k4': 4}
d = dict(**d1, **d2)
print(d)
# {'k1': 1, 'k2': 2, 'k3': 3, 'k4': 4}
内包表記を使う
d = {f'key{x}': x for x in range(2)}
print(d)
zipと内包表記を使う。
keys = ['k1', 'k2', 'k3']
values = [1, 2, 3]
d = {k: v for k, v in zip(keys, values)}
print(d)
# {'k1': 1, 'k2': 2, 'k3': 3}
コメント