簡體   English   中英

“類型錯誤:不可散列的類型:dict” python 錯誤

[英]“Type Error: unhashable type: dict” python error

這目前還沒有完成,但我正在嘗試將武器添加到“weapon_inventory”中,並且每當我嘗試時都會彈出此錯誤。 我是 python 的初學者,所以如果您知道如何解決此問題,請嘗試將其解釋得很簡單,以便我可以理解並改進。

weapon_inventory = {}

weapon_found = "Boss Weapon"
weapon_inventory.update({weapon_found: {"name": weapon_found, "durability": 100}})
print("Inventory: ", ", ".join(weapon_inventory))

您的代碼片段在 Python 3.8.10 上為我工作。 但是要了解您所說的錯誤,您應該了解字典的工作原理。

在 Python 中,可以說有兩種數據類型。 可散列和不可散列。 可散列是不可變的(其值不隨時間變化),如 integer、字符串、元組等。不可散列是可變的(其值可能隨時間變化),如列表、字典等。

在字典中,您的“密鑰”應該是一個可散列的 python 數據類型。 意味着,您不能使用列表、字典或集合作為您的“鍵”。 如果您嘗試使用非哈希數據類型作為您的 dict 鍵,那么您將收到您在問題標題中提到的錯誤: TypeError: unhashable type: 'dict'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM