我正在使用一个字典,但是我不想替换字典中的值,而是想向其中添加新值,下面是我现在拥有的,它用新值替换字典中现有的值
样本值
source: something.txt
suspicious_key: GFATGTFBFD
startPos: 23
endPos:32
之后的变化是为同一文档添加了新的suspicious_key
、startPos
和endPos
source: something.txt
suspicious_key: GFATGTFBFD
startPos: 23
endPos:32
<<<<Second entry under same key>>>>
suspicious_key: GKDTFSFSAS
startPos: 32
endPos:45
dictionary[source] = {suspicious_key: {"startPos":index_start, "endPos": index_end}}
我想在同一个源下为可疑键startPos和endPos添加另一组值
我试过update()
,但似乎不起作用
dictionary[source].update({suspicious_key: {"startPos":index_start, "endPos": index_end}})
我该怎么办
难道你不想把对象的列表存储在你的字典里吗
我假设对于每个源,您都希望获得一组由可疑的密钥标识的对象
添加第一项:
然后,当您要添加下一项时:
因此,当您请求dictionary[source]时,您将得到一个对象列表
你的
dict.update()
更新了错误的字典;它有效地执行与分配给一个suspicious_key
键完全相同的操作将字典更新为
suspicious_key
键引用:如果该键可能丢失,请使用
dict.setdefault()
方法为您插入一个空字典:现在
startPos
和endPos
键将被添加到嵌套字典中,而不是完全替换嵌套字典相关问题 更多 >
编程相关推荐