0

時系列辞書を利用できます。各キーのすべての値をカウントする必要があります。これを行うための最も効率的な方法は何ですか?

データ={u'604':[[1361836800、{u'14885549':52、u'91478624':127、u'25581439':12、u'532617990':4}]、[1361833200、{u'14885549 ':38、u'91478624':204、u'25581439':14、u'40302362':5、u'532617990':2}]]}

これを行うための私の試みはここにあります(これは確かにばかげていますが、機能します):

total = 0
for i in DATA:
    for j in DATA[i]:
        for k in j[1]:
            total += j[1][k]

助けてください?

4

1 に答える 1

4

sum()ジェネレーターでの使用:

total = sum(sum(inner[1].values()) for outer in DATA.values() for inner in outer)

これは、次の for ループと動作が同等です。

total = 0
for outer in DATA.values():
    for inner in outer:
        total += sum(inner[1].values())
于 2013-02-26T21:35:37.713 に答える