0

各要素が辞書のタイプである要素のリストがあります。この実装は Python で行いたいと考えています。

私の入力は次のようなものです:

MyList = [{'Kathy':1, 'Bob':1, 'Spencer':1}, {'Kathy':4, 'Cynthia':2, 'Bob':3, 'Goldman':1}, {'Spencer':2, 'Bob':1}]

私の出力は次のようになります。

MyDict = {'Kathy':5, 'Bob':5, 'Spencer':3, 'Cynthia':2, 'Goldman':1}
4

3 に答える 3

0

defaultdict を使用してそれを行う 1 つの方法を次に示します。

import collections

MyDict = collections.defaultdict(int)
for d in MyList:
    for k,v in d.items():
        MyDict[k] += v
MyDict = dict(MyDict) #if you want a normal dict

編集: カウンター バージョンの方が優れているようです。しかし、int を追加する以外のことをしなければならない場合に備えて、defaultdict について知っておくことは依然として重要です。たとえば、リストやセットを蓄積するのに役立ちます。

于 2013-04-23T19:53:17.037 に答える