2015-07-21 92 views
0

我需要從列表中實現Python中的二維計數器。我見過很多解決方案,但是他們不考慮初始零值來進行計數。我應該如何改變這樣的:二維字典計數器

[ 
    (P1, B1), 
    (P1, B2), 
    (P2, B1), 
    (P2, B1), 
    (P3, B1) 
] 

到這個?:

{ 
    P1: { 
    B1: 1, 
    B2: 1 
    }, 
    P2: { 
    B1: 2 
    }, 
    P3: { 
    B1: 1 
    } 
} 

回答

3
d=defaultdict(lambda:defaultdict(int)) 
for k,v in items: 
    d[k][v] += 1 

我認爲應該工作