辞書とは
Pythonの辞書は、キーと値のペアを保持するデータ型です。リストやタプルとは異なり、要素をインデックスで参照するのではなく、キーで参照します。辞書は {}
で囲まれ、キーと値のペアは :
で区切られます。複数のキーと値のペアは ,
で区切ります。
# 辞書の作成
fruits = {'apple': 100, 'banana': 200, 'orange': 300}
要素の参照
辞書の要素はキーで参照します。
# 要素の参照
print(fruits['apple']) # 100
print(fruits['orange']) # 300
存在しないキーで参照すると KeyError が発生します。
# 存在しないキーの参照
print(fruits['grape']) # KeyError: 'grape'
要素の追加と更新
キーと値のペアを追加するには、辞書に新しいキーを指定して値を代入します。
# 要素の追加
fruits['grape'] = 400
print(fruits) # {'apple': 100, 'banana': 200, 'orange': 300, 'grape': 400}
すでに存在するキーを指定して値を代入すると、そのキーに対応する値が更新されます。
# 要素の更新
fruits['banana'] = 500
print(fruits) # {'apple': 100, 'banana': 500, 'orange': 300, 'grape': 400}
要素の削除
キーを指定して辞書から要素を削除するには、del
を使用します。
# 要素の削除
del fruits['orange']
print(fruits) # {'apple': 100, 'banana': 500, 'grape': 400}
キーの存在の確認
キーが辞書に存在するかどうかを確認するには、in
キーワードを使用します。
# キーの存在の確認
print('banana' in fruits) # True
print('orange' in fruits) # False
辞書のメソッド
以下に、Pythonの辞書で使用できる主なメソッドをいくつか紹介します。
keys()
keys()
メソッドは、辞書のすべてのキーを返します。
my_dict = {"apple": 2, "banana": 4, "orange": 6}
print(my_dict.keys())
出力結果:
dict_keys(['apple', 'banana', 'orange'])
values()
values()
メソッドは、辞書のすべての値を返します。
my_dict = {"apple": 2, "banana": 4, "orange": 6}
print(my_dict.values())
出力結果:
dict_values([2, 4, 6])
items()
items()
メソッドは、辞書のすべてのキーと値のペアを返します。
my_dict = {"apple": 2, "banana": 4, "orange": 6}
print(my_dict.items())
出力結果:
dict_items([('apple', 2), ('banana', 4), ('orange', 6)])
get()
get()
メソッドは、指定されたキーに関連付けられている値を返します。指定されたキーが辞書に存在しない場合、None
を返します。
my_dict = {"apple": 2, "banana": 4, "orange": 6}
print(my_dict.get("apple"))
print(my_dict.get("grape"))
出力結果:
2
None
pop()
pop()
メソッドは、指定されたキーに関連付けられている値を取り出し、辞書からそのキーと値のペアを削除します。
my_dict = {"apple": 2, "banana": 4, "orange": 6}
print(my_dict.pop("banana"))
print(my_dict)
出力結果:
4
{'apple': 2, 'orange': 6}
clear()
clear()
メソッドは、辞書からすべての要素を削除します。
my_dict = {"apple": 2, "banana": 4, "orange": 6}
my_dict.clear()
print(my_dict)
出力結果:
{}
辞書の内包表記
リストやタプルと同様に、辞書も内包表記を使用して生成できます。辞書内包表記は、以下のように書きます。
{key: value for key, value in iterable}
以下は、リスト内包表記の例と同じようなキーが文字列で、値がその文字列の長さである辞書内包表記の例です。
my_list = ["apple", "banana", "orange"]
my_dict = {fruit: len(fruit) for fruit in my_list}
print(my_dict) # {'apple': 5, 'banana': 6, 'orange': 6}
コメント