Python:如何整合列表中的内容?

时间:2013-02-25 11:26:37

标签: python list

我有以下列表:

>>> list_of_list = [  ['a', 2], ['b', 3], ['a', 4, 5]  ]

我想要以下结果: 它可以告诉我有两个不同的项目:'a'和'b' 2.“a”中有2个项目,“b”中有1个项目     'a'= [2,4,5]     'b'= 3

由于

1 个答案:

答案 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])