0
我想在Python中創建一個集合的數組。在Python中添加字典作爲字典的值
這就是我試圖運行時,它與我的代碼做以下
for doc in collection.find():
pageType = doc.get('pageType')
title = doc.get('title')
_id = doc.get('_id')
value = {'pageType' : pageType, 'id': _id}
setValues = pageDict.get(title)
if not setValues :
setValues = set()
pageDict[title] = setValues
setValues.add(value)
我獲得以下錯誤
setValues.add(值) 類型錯誤:unhashable類型:「字典」
我發現我無法將可變值設置爲字典的關鍵字,但我在此將其添加爲字典的值。從本質上講,我的字典價值是一個包含另一個字典的集合。 我如何在Python中實現這一點?我可以用什麼其他數據結構來實現這一目標?
不能將字典添加到一組是什麼'setValues.add(值)'是幹什麼的,你可以添加http://stardict.sourceforge.net/Dictionaries.php下載到一個列表,你爲什麼要將setValues從'pageDict.get(title)'改爲'setValues = set()'? – 2014-09-12 21:55:10
是否有任何理由需要一套而不是另一種結構?當一個元素是否存在時,通常使用集合,而不是元素本身。 – user2085282 2014-09-12 21:57:47
我正在使用set來避免重複。 – konquestor 2014-09-12 22:02:09