簡體   English   中英

在python中的字典字典中計數鍵

[英]Counting keys in dictionary of dictionary in python

我有字典樣本:

具有這種結構dictsample.update({key: dif_k}) dictsample和dif_k具有這種結構dif_k.update({k:v})

dictsample:

{Object1 : { size : 14, cell: G, capacity : 35}, Object2 : { size : 14, load : 2}, Object3 : { size : 12, cell : F, load : 3, throughput : 55}, ...} 

我需要這樣的輸出:

{Object1 : 3, Object2 : 2, Object3 : 4, ...}

我嘗試過的代碼:

ct = {}
for key, dif_k in dictsample.iteritems():
    for k, v in dif_k.iteritems():
        dictcounter = k.count(k)
        ct.update({key:dictcounter})

我得到的是:{Object1:1,Object2:1,Object3:1,...}

嘗試使用類似dict理解的方法:

{k: len(v) for k,v in dictsample.iteritems()}

您不能簡化一點嗎? 這樣的東西不會奏效嗎?

ct = {}
for key in dictsample:
    ct[key] = len(dictsample[key])

您也可以這樣做:

the_list = {i:len(dictsample[i]) for i in dictsample.keys()}

此方法不需要迭代,並且更短。

編輯:

要通過數字元素訪問值,請嘗試以下操作:

the_list = {len(dictsample[i]):i for i in dictsample.keys()}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM