有没有从python字典中提取浮点值的方法?

有没有从python字典中提取浮点值的方法?,python,json,dictionary,Python,Json,Dictionary,我是Python新手,所以我仍然在为许多简单的事情而挣扎。 我有一本结构如下的词典: <class 'dict'> {'1388534400000': {'electricity': 0.0}, '1388538000000': {'electricity': 0.0}, '1388541600000': {'electricity': 0.0},...} 假设值中始终有一个键electronic,您可以对electronic的值进行求和,如下所示 >>> d {

我是Python新手,所以我仍然在为许多简单的事情而挣扎。 我有一本结构如下的词典:

<class 'dict'>
{'1388534400000': {'electricity': 0.0}, '1388538000000': {'electricity': 0.0}, '1388541600000': {'electricity': 0.0},...}

假设值中始终有一个键
electronic
,您可以对
electronic
的值进行求和,如下所示

>>> d
{'1388534400000': {'electricity': 0.0}, '1388538000000': {'electricity': 0.0}, '1388541600000': {'electricity': 0.0}}
>>> sum(v['electricity'] for k,v in d.items())
0.0
或者只是

>>> sum(v['electricity'] for v in d.values())
0.0
也许用后者,因为我做了一个基准

>>> import timeit
>>> timeit.timeit("sum(v['electricity'] for k,v in d.items())", setup="d={'1388534400000': {'electricity': 0.0}, '1388538000000': {'electricity': 0.0}, '1388541600000': {'electricity': 0.5}}")
0.4952311920005741
>>> timeit.timeit("sum(v['electricity'] for v in d.values())", setup="d={'1388534400000': {'electricity': 0.0}, '1388538000000': {'electricity': 0.0}, '1388541600000': {'electricity': 0.5}}")
0.4470630470004835
>>> import timeit
>>> timeit.timeit("sum(v['electricity'] for k,v in d.items())", setup="d={'1388534400000': {'electricity': 0.0}, '1388538000000': {'electricity': 0.0}, '1388541600000': {'electricity': 0.5}}")
0.4952311920005741
>>> timeit.timeit("sum(v['electricity'] for v in d.values())", setup="d={'1388534400000': {'electricity': 0.0}, '1388538000000': {'electricity': 0.0}, '1388541600000': {'electricity': 0.5}}")
0.4470630470004835
sum = 0
for key in dict:
    try:
        dict[key] + 2.04
        sum += dict[key]
    except TypeError:
        pass