>>> dic = {'a': ['1a','2a','3a'],'b': ['1b','2b'], 'a' : ['4a','5a']}
它具有相同的键“ a”
我想从这个骰子中获取所有值
但是当我使用
>>> dic.get('a')
它只返回
['4a','5a']
如何从中获取所有“ a”键的值?
我曾考虑过使用重复性语句来检查所有键,但是效率似乎很低
python大神给出的解决方案
字典不能存储重复的键。一种解决方法是将列表或集合存储在字典中。我建议您将值存储在指向相同键的集合中。
>>> from collections import defaultdict
>>> dic = defaultdict(list)
>>> dic['a'].extend(['1a','2a','3a'])
>>> dic['a'].extend(['4a','5a'])
>>> dic['b'].extend(['1b','2b'])