如果其他key, value pair
评估为真,如何更新key, value pair
?
bank = {
"88386180860608512" : { # This is a unique id number
"balance" : 100,
"name" : "Aehnon"
},
"88469127777243136" : { # This is a unique id number
"balance" : 100,
"name" : "Balanceofevil"
},
"89741285950246912" : { # This is a unique id number
"balance" : 3310,
"name" : "Sharky"
}
}
如果我的代码给了我一个名单,[" Sharky"," Aehnon"],我需要将这两个用户的余额增加50个。问题是我不知道他们的身份号码"。
为了进一步说明,我想将每个余额更新50,其中匹配key, value
(IE"名称":Sharky与名称匹配" Sharky" in我的清单)。
到目前为止,我知道如果我这样做,我可以验证一个名称:
b = [subdict["name"] for subdict in bank.values()]
if "Aehnon" in b:
print("True")
else:
print("False)
评估为:
True
但我不确定如何使用更大的列表动态执行此操作以更新余额。
答案 0 :(得分:1)
这是你想要的吗?
bank = {
"88386180860608512" : { # This is a unique id number
"balance" : 100,
"name" : "Aehnon"
},
"88469127777243136" : { # This is a unique id number
"balance" : 100,
"name" : "Balanceofevil"
},
"89741285950246912" : { # This is a unique id number
"balance" : 3310,
"name" : "Sharky"
}
}
names = ["Sharky", "Aehnon"]
for v in bank.values():
if v["name"] in names:
v['balance'] += 50
print(bank)