【Python】dictionaryから値を取得する2つの違い
作成日:2025-05-25
更新日:2025-09-28

dictionaryから
厳格に or 安全に
取得する
厳格に or 安全に
取得する
取得方法は2つ
["key"]
- 厳格
- .get(“key”, デフォルト値)
- 安全

どう違う?
キーが存在するかを判定するかしないか
["key"]
- そのキーが絶対に存在する前提
.get("key", デフォルト値)
- キーが存在しなければ デフォルト値を返す
仕様による違い
厳格|dict["key"]
- キーが存在しなければ
KeyError
を出す - 安心して使えるのは「そのキーが確実にあるとわかってる時」だけ
d = {"name": "usagi"}
print(d["name"]) # OK
print(d["age"]) # ❌ KeyError キーがない
安全|dict.get("key")
- キーがなくてもエラーを出さずに
None
(または指定した値)を返す - 不完全な辞書・動的なキーと相性◎
d = {"name": "usagi"}
print(d.get("name")) # → "usagi"
print(d.get("age")) # → None
print(d.get("age", "N/A")) # → "N/A"

Exists 確認をしなくても
デフォルト値が入るから
べんり
Python公式ドキュメントより(意訳)
📚 出典: Python公式辞書型の解説
dict.get(key[, default])
は、指定されたキーに対応する値を返す。
キーが存在しない場合は、default
を返す(省略時はNone
)。
→ 例外を発生させたくないときに使う。
設計メモ
- 確定しているロジックの場合
-
[]
でいい
-
- 出力・ログ・UIなど柔軟さが求められる場合
.get()
が推奨- デフォルト値の設定も推奨
print_result()
みたいに
外から辞書を受け取る共通関数には
.get("key", デフォルト値)
を使うほうがベター
2025-05-25
編集後記:
この記事の内容がベストではないかもしれません。
記事一覧
-
[Python]Write a 1D arrayvia pandas 【Python】Excelに書き出す|pandas.ExcelWriter -
[Python]Search or Scanfor Excel book 【Python】ファイル名からExcelブックを取得する|openpyxl or win32com -
[Python]list concatenation 【Python】配列(list)の結合|arr + arr , np.concatenate -
[Python]endswith+ lower 【Python】拡張子の存在確認|endswith + lower(Method Chaining) -
[Python]pathlib存在確認 【Python】フォルダとファイルの存在確認|pathlib -
[Python]inString 【Python】指定の文字列が含まれているか|in