2016-09-26 75 views
0

我的詞典列表看起來像這樣計算值:Python的字典對每個鍵

[{'id':1,'name':'Foo','age':20},{'id':2,'name':'Bar'}] 

我怎樣才能得到總價值計入每個鍵即3對ID:1

回答

3

您可以在字典上使用len()來獲得密鑰的數量:

>>> a = [{'id':1,'name':'Foo','age':20},{'id':2,'name':'Bar'}] 
>>> len(a[0]) 
3 
>>> len(a[1]) 
2 
1

更詳細的問題描述會有幫助。現在我假設你想讓列表中每個字典的長度與id鍵的值保持一致。在這種情況下,像

val_counts = {d['id']: len(d) for d in dlist} 

應符合您的需求。這是一個詞典理解,其關鍵是id值,其值是列表中每個詞典的長度。對於您的特定數據,我得到的val_counts字典是

{1: 3, 2: 2}