【发布时间】:2015-07-24 06:26:40
【问题描述】:
我有一个itemList 格式的元组序列(key, value),我想将该列表中的项目转换为dict 格式{key : [value, ..], ..}。一个特定的key 值可能会多次出现在itemList 中,并带有匹配的或新的value,我也想记录这些值(这就是为什么简单地使用dict(itemList) 不起作用的原因)。
我正在使用Python2.7.9 并寻找使此代码小型化的方法:
newDict = dict()
for k,v in itemList: # itemList contains the tuples described above.
if k in newDict:
newDict[k].append(v)
else:
newDict[k] = [v]
我尝试将map() 和list-comprehensions 与newDict.update(..) 结合使用,但都没有达到预期效果。
我查看了this similar question,,但我输入的格式和所需的输出有很大不同。
(对于那些想知道的人,“你为什么要更改这个完全可以接受的代码?”:我有兴趣找到更多应用 Python 内置和模块的替代方法作为学术练习,而不是故意避免一些功能性和可理解的东西。)
【问题讨论】:
标签: python python-2.7 dictionary key-value