如何计算百分比,然后添加如何添加到python中的dict?

时间:2014-02-25 09:49:26

标签: python

我有一个dict如下

      aDict = {0:{'x':22, 'y':42}, 1:{'x':42, 'y':55}}

现在我想计算x到y的百分比,然后在aDict中的每个字典中添加键'z'的结果。 如何实现它?如果每个字典中没有x和y值,应该忽略它。

谢谢。

2 个答案:

答案 0 :(得分:2)

使用字典,其中一个元素缺少x和y值:

>>> aDict = {0:{'x':22, 'y':42}, 1:{'x':42, 'y':55}, 2:{}}
>>> for key,value in aDict.items():
...     try:
...             value['z'] = 100 * value['x'] / float(value['y'])
...     except KeyError:
...             continue
... 
>>> aDict
{0: {'y': 42, 'x': 22, 'z': 52.38095238095238}, 1: {'y': 55, 'x': 42, 'z': 76.36363636363636}, 2: {}}

答案 1 :(得分:0)

您需要使用dict.iteritems()来迭代字典:

for key, value in aDict.iteritems():
    value['z'] = int(100.0 / (float(value['y']) / float(value['x'])))