python二维字典的更新操作与一纬字典不太一样, 二维字典需要先判断 第一个key值是否在字典中 是 则更新第二个key 否则更新第一个 key
问题:
原数据:
{129042219: ['', '唱歌', '好声音', '舞姿难看', '游戏', '好身材', '小胸', '幽默'], 109458333: ['', '唱歌', '好声音', '好身材', '小胸'], 128750094: ['', '好声音', '唱歌', '好身材', '舞姿难看', '游戏', '小胸', '幽默', '丑']}
需求 两两做完相似性后 更新到二维字典中
需求格式如下:
{ 129042219: {109458333: 0.63, 128750094: 0.89}, 109458333: {129042219: 0.63, 128750094: 0.56}, 128750094: {129042219: 0.89, 109458333: 0.56} }
def dict(self,thedict, key_a, key_b, val): ''' 更新二维字典 :param thedict: 字典 :param key_a: key a :param key_b: key b :param val: key a 与 key b 相似度值 :return: 更新 { key_a : {key_b : value} } 后的字典 thedict ''' adic = thedict.keys() if key_a in adic: thedict[key_a].update({key_b: val}) else: thedict.update({key_a:{key_b: val}})