在python中使用字典时,如果字典的一个key对应的value是一个列表类型的,直接用列表的append()是不行的,比如dic[key].append(value),因为解释器并不知道 dic[key]的类型.
解决方案:
1)value中允许有重复项.
dic = {}
dic.setdefault(key,[]).append(value)
如:
d1.setdefault('key1',[]).append(1)
d1.setdefault('key1',[]).append(2)
print d1['key1'] # [1,2]
(2)value中无重复项.
dic = {}
dic.setdefault(key,{})[value] = 1
如:
d1.setdefault('bob',{})['f'] = 1
d1.setdefault('bob',{})['h'] = 1
d1.setdefault('bob',{})['f'] = 1
print d1['bob'] #{'h': 1, 'f': 1}