我想要使用两本词典:
dictionary1 = {'Reece': 2, 'Harry': 3, 'Jack': 3, 'Sam': 3, 'Dom': 3}
dictionary2 = {'Reece': 1, 'Harry': 14, 'Jack': 8, 'Sam': 16, 'Dom': 5}
我希望将dictionary2中的每个值除以dictionary1中的值,然后将其打印出来。 这将打印出如下内容:
里斯:0.5
哈里:4.66
我目前正在尝试使用此代码进行打印和舍入,这是错误的:
for b in dictionary2
print('{}: {} '.format(b[0], round(b[1]/dictionary1[1], 2)))
答案 0 :(得分:0)
results = {item:round(dictionary2.get(item)/dictionary1.get(item), 2) for item in dictionary1}
results
:
{'Reece':0.5,'Harry':4.67,'Sam':5.33,'Dom':1.67,'Jack':2.67}
print(*(': '.join([item, str(results.get(item))]) for item in results), sep='\n')
Reece:0.5
哈利:4.67
山姆:5.33Dom:1.67
杰克:2.67
答案 1 :(得分:0)
如果上述解决方案的逻辑几乎相同,您可以直观地了解正在发生的事情。您可以在打印或存储时根据需要格式化浮动
>>> for k1 in dictionary2.keys():
... for k2 in dictionary1.keys():
... if k1 == k2:
... print k1, float(dictionary2[k1])/dictionary1[k2]
下面的一个更简单 - 所以python interpeteter不会重载
>>> for k in dictionary2.keys():
... print k, float(dictionary2[k])/dictionary1[k]