Lista de valores para chaves duplicadas no dicionário Python

Desculpas de antemão se esta questão já foi explorada aqui - eu olhei para respostas diferentes aqui, mas não consegui encontrar o que eu preciso.

Meu objetivo é criar um dicionário como esse -{'a':[10, 9, 10, 10], 'b':[10, 9, 1, 0], 'c':[0, 5, 0, 1], and so on}

O que eu tenho é vários dicionários com chaves duplicadas (mesmas chaves em todos os outros dicionários), algo como isto{'a':10, 'b': 0, 'c': 2} {'a':7, 'b': 4, 'c': 4} {'a':4, 'b': 5, 'c': 3}

Eu não tenho como saber o número de tais dicionários, ou se existem chaves que continuam até 'f', ou um 'g' nelas, mas eu sei que as chaves estão duplicadas. eu tenteidefaultdict mas o que eu ganho é--

defaultdict(<type 'list'>, {'a': [10]})
defaultdict(<type 'list'>, {'a': [10], 'b': [3]})
defaultdict(<type 'list'>, {'a': [10], 'b': [3], 'c': [0]})

e depois a mesma coisa para o próximo dicionário -

defaultdict(<type 'list'>, {'a': [4]})
defaultdict(<type 'list'>, {'a': [4], 'b': [5]})
defaultdict(<type 'list'>, {'a': [4], 'b': [5], 'c': [1]})

O código que tenho para a saída acima é -

d = collections.defaultdict(list)
    for k, v in z.iteritems():
        d[k].append(v)
        c = d.items()
        print d

Se eu fizer umprint c em vez disso (para imprimird.items()) Eu recebo --

[('a', [10])]
[('a', [10]), ('b', [3])]
[('a', [10]), ('c', [0]), ('b', [3])]

que é repetido novamente para cada dicionário. Como obtenho 1 dict segurando todas as chaves, valores -

{'a':[10,0,..], 'b':[4, 3, 4,..], etc.} ?

Eu também devo acrescentar que os dicts que eu tenho são o resultado de um loop for e não são armazenados individualmente em uma variável única.

questionAnswers(4)

yourAnswerToTheQuestion