[英]Unhashable type: 'list' error in values in dict
我有兩個新字典,如下所示:
a = {Banana: 60, Apple: 90, Pear: 80}
b = {60: 25, 90: 45, 89: 94}
我想創建一個新字典,該字典僅將字典b中的值用作值,然后將其合並為a。 因此,例如Banana的值為60,這也是b中的鍵。 60的值是25。所以最后我想要Banana: 25
因此,我編寫了如下代碼: {k:b[v] for k,v in a.items() if v in b}
但是我一直收到以下錯誤: unhashable type: 'list'
我了解這可能是因為我的b[v]
值類似於[[25], [45], [94]]
在我的字典理解中,我嘗試將其轉換為元組,嘗試使其變平,但仍然沒有運氣。
任何幫助都會很棒
嘗試這個 :
a = {'Banana': 60, 'Apple': 90, 'Pear': 80}
b = {60: 25, 90: 45, 89: 94}
c = {k:(b[a[k]] if a[k] in b else a[k]) for k in a}
輸出 :
c = {'Banana': 25, 'Apple': 45, 'Pear': 80}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.