Pythonの辞書(dict)メソッド完全ガイド|keys・items・valuesなどの使い方を実例付きで解説
Pythonの辞書(dict)は、波括弧 {} で囲んだコレクション型のデータ構造で、内部に「キー」と「値」のペアを複数格納できます。各キーは1つの値と紐づいており、キーを指定することで対応する値へ素早くアクセスできるのが特徴です。
キーには数値や文字列など変更不可(イミュータブル)なオブジェクトを使用します。一方、値には文字列や数値だけでなく、リストやタプル、さらには別の辞書など、さまざまなオブジェクトを格納することが可能です。
辞書で使える主なメソッド
Pythonの標準ライブラリには、辞書操作に便利な組み込みメソッドが多数用意されています。ここでは、実際の開発で特によく使われる代表的な辞書メソッドについて、サンプルコードと実行結果をもとに順番に解説していきます。
keys() – すべてのキーを取得する
keys() メソッドは、辞書に含まれるすべてのキーの一覧を返します。
コード例
dict={'Name':'Harry','Rollno':30,'Dept':'cse','Marks':97}
print(dict.keys())上記のコードを実行すると、次のような結果が得られます。
実行結果
dict_keys(['Name', 'Rollno', 'Dept', 'Marks'])
items() – キーと値のペアを取得する
items() メソッドは、辞書内のすべての(キー, 値)のペアをタプルとして一覧形式で返します。
コード例
dict={'Name':'Harry','Rollno':30,'Dept':'cse','Marks':97}
print(dict.items())上記のコードを実行すると、次のような結果が得られます。
実行結果
dict_items([('Name', 'Harry'), ('Rollno', 30), ('Dept', 'cse'), ('Marks', 97)])values() – すべての値を取得する
values() メソッドは、キーと値のペアから「値」だけを取り出した一覧を返します。
コード例
dict={'Name':'Harry','Rollno':30,'Dept':'cse','Marks':97}
print(dict.values())上記のコードを実行すると、次のような結果が得られます。
実行結果
dict_values(['Harry', 30, 'cse', 97])
pop() – 指定したキーの要素を削除する
pop(key) メソッドは、指定したキーに対応する要素を辞書から削除し、その値を戻り値として返します。
コード例
dict={'Name':'Harry','Rollno':30,'Dept':'cse','Marks':97}
dict.pop('Marks')
print(dict)上記のコードを実行すると、「Marks」の要素が削除されたことが確認できます。
実行結果
{'Name': 'Harry', 'Rollno': 30, 'Dept': 'cse'}copy() – 辞書のコピーを作成する
copy() メソッドは、元の辞書の浅いコピー(シャローコピー)を新しく作成して返します。元の辞書に影響を与えずに複製したい場合に便利です。
コード例
dict={'Name':'Harry','Rollno':30,'Dept':'cse','Marks':97}
dict_new=dict.copy()
print(dict_new)上記のコードを実行すると、コピーされた新しい辞書が出力されます。
実行結果
{'Name': 'Harry', 'Rollno': 30, 'Dept': 'cse', 'Marks': 97}clear() – 辞書の全要素を削除する
clear() メソッドは、辞書内のすべての要素を削除し、空の辞書にします。
コード例
dict={'Name':'Harry','Rollno':30,'Dept':'cse','Marks':97}
dict.clear()
print(dict)上記のコードを実行すると、すべての要素が削除された空の辞書が出力されます。
実行結果
{}get() – キーに対応する値を安全に取得する
get() メソッドは、指定したキーに対応する値を返します。キーが辞書に存在しない場合でもエラーにならず、デフォルト値として None を返すのが特徴です。
コード例
dict={'Name':'Harry','Rollno':30,'Dept':'cse','Marks':97}
print('\nName: ', dict.get('Name'))
print('\nAge: ', dict.get('Age'))存在しないキー「Age」を指定しても、エラーではなく None が返されている点に注目してください。
実行結果
Name: Harry Age: None
update() – 新しい要素を追加・更新する
update() メソッドは、辞書に新しい要素を追加します。既存のキーを指定した場合は、その値が新しい値に更新されます。
コード例
dict={'Name':'Harry','Rollno':30,'Dept':'cse','Marks':97}
dict.update({'Age':22})
print(dict)上記のコードを実行すると、新しい要素「Age」が追加された辞書が出力されます。
実行結果
{'Name': 'Harry', 'Rollno': 30, 'Dept': 'cse', 'Marks': 97, 'Age': 22}まとめ:辞書メソッド一覧
| メソッド | 機能 |
|---|---|
| keys() | すべてのキーの一覧を取得する |
| items() | (キー, 値)のペアをタプルとして取得する |
| values() | すべての値の一覧を取得する |
| pop(key) | 指定したキーの要素を削除し、その値を返す |
| copy() | 辞書の浅いコピーを作成する |
| clear() | 辞書の全要素を削除する |
| get(key) | キーに対応する値を取得(存在しない場合はNone) |
| update() | 新しい要素を追加、または既存の値を更新する |
これらのメソッドを使いこなせるようになると、Pythonでのデータ管理や処理の幅が大きく広がります。まずは keys()・values()・get() あたりから実際にコードを書いて試してみるのがおすすめです。
-
Pythonで辞書のリストを値で並べ替える方法を解説
Pythonで辞書のリストを値に基づいてソートする方法Pythonでは、辞書(dict)が格納されたリストを、各辞書の特定のキーの値を基準にして並べ替えることができます。最も一般的な方法は、組み込み関数 sorted() を使い、key 引数にラムダ式(lambda)を渡すことです。ラムダ式で「どのキーの値を使ってソートするか」を指定します。sorted() 関数を使った基本的なソート以下は、辞書のリストを age キーの値で昇順に並べ替える例です。A = [{name:john,age:45}, {name:andi,age:23}, {name:john,age:22}
-
Pythonで辞書(dict)をCSVファイルに保存する方法を徹底解説
CSV(Comma Separated Values、カンマ区切り値)は、多くのプラットフォームやアプリケーションで広くサポートされている、最も一般的なデータ交換用ファイル形式です。Pythonで扱った辞書型(dict)のデータをCSVとして保存できれば、Excelなどの表計算ソフトでも簡単に開けるようになります。 ここでは、Pythonの標準ライブラリである csvモジュール を使って、辞書をCSVファイルに書き出す2つの方法を紹介します。 方法1:open()関数とwrite()メソッドを使うシンプルな方法 最も手軽なのは、open() 関数でCSVファイルを書き込みモード(w)で開き、