当我想在Key下的Dict中附加一个newvalue时,我发现自己必须写:
# Dict={}
# Key = ....
# newvalue = ....
if not Key in Dict:
Dict[Key] = [ newvalue ]
else:
Dict[Key].append(newvalue)
它需要四行代码。有没有更简洁的方式与python标准库?例如
Dict.appendkeyvalue(Key, newvalue)
答案 0 :(得分:6)
您可以使用defaultdict
:
from collections import defaultdict
d = defaultdict(list)
d['something'].append(3)
print d['something']
# > [3]
答案 1 :(得分:3)
使用标准词典,您可以使用setdefault()
:
d = {}
d.setdefault("something", []).append(3)
setdefault()
此处返回d["something"]
(如果存在),否则会创建一个以[]
为值的新词典条目并返回该值。