从空dict创建元组列表

时间:2016-05-18 18:16:59

标签: python dictionary tuples

我想创建一个dict,其中值是元组列表

下面的代码生成一个包含数字列表的dict,而不是元组列表

mydict = {}
for line in file:
  # read a
  # read b
  # read c 
  mydict[a] = (b, c) if a not in mydict else mydict[a].append((b, c))

2 个答案:

答案 0 :(得分:5)

使用defaultdict

from collections import defaultdict

mydict = defaultdict(list)
for line in file:
    a,b,c = line.split() # or something else
    mydict[a].append((b,c))

答案 1 :(得分:0)

使用普通dict

时,您也可以使用setdefault
mydict = {}
mydict.setdefault(a, list()).append((b,c))