2

与えられたリストの辞書

vd = {'A': [1,0,1], 'B':[-1,0,1], 'C':[0,1,1]}

リスト要素を賢明に追加したい。したがって、リストAの最初の要素をリストBの最初の要素に追加したいのですが、逆に、ラベルがA、B、Cであることに依存できないという複雑さがあります。それは何でもかまいません。次に、辞書の長さも可変です。ここでは 3 ですが、30 になることもあります。

必要な結果はリスト [0, 1, 3] です

4

3 に答える 3

9

では、すべての値を要素ごとに合計したいだけですか?

[sum(l) for l in zip(*vd.values())]

于 2013-07-21T21:38:30.793 に答える
1
vd = {'A': [1,0,1], 'B':[-1,0,1], 'C':[0,1,1]}
vd_keys = list(vd.keys())
rt = vd[vd_keys.pop()].copy() # copy otherwise rt and vd[vd_keys.pop()] will get synced
for k in vd_keys:
    for i in range(len(rt)):
        rt[i] += vd[k][i]

print(rt)
于 2013-07-21T21:44:58.537 に答える