我有以下列表:
>>> list_of_list = [ ['a', 2], ['b', 3], ['a', 4, 5] ]
我想要以下结果: 它可以告诉我有两个不同的项目:'a'和'b' 2.“a”中有2个项目,“b”中有1个项目 'a'= [2,4,5] 'b'= 3
由于
答案 0 :(得分:5)
你可以(应该)使用字典,并将每个子列表中的第一项(“键”)映射到每个子列表中的第二项(“值”)。
使用defaultdict
将省去使用空列表实例化每个新密钥的麻烦。
正如eumiro指出的那样,为了保持一致,'b'
的值应该是包含单个项3
的列表,而不仅仅是数字3
。
from collections import defaultdict
d = defaultdict(list)
for item in list_of_list:
d[item[0]].append(item[1])