環境設定 数値 文字列 正規表現 リスト タプル 集合 辞書 ループ 関数 クラス データクラス 時間 パス ファイル スクレイピング その他

Python の辞書はリストや辞書をキーにできない - hashable でないキーは TypeError を起こす

最終更新日 2023.02.18

Python の辞書は辞書をキーにできません。

data = {'book': 13, 'pen': 48}

wrap = {data: 5}

# TypeError: unhashable type: 'dict'

文字列や数値などの hashable は辞書のキーになれますが、リストや辞書といった hashable でないものをキーにしようとすると TypeError が発生します。

data = [1, 2, 3]

wrap = {data: 5}

# TypeError: unhashable type: 'list'