我有两本词典:
dict1 = {'Canada' : 2.5, 'UK' : 3.7, 'USA' : 9.0}
dict2 = {'a' : 7, 'b' : 2}
我希望能够使用dict1
中的值来遍历dict2
中的值,以确定哪些元素更大。输出应为:
a is larger than Canada.
a is larger than UK.
(因为7显然大于2.5和3.7)。我希望这是有道理的!
到目前为止,我写过:
for k, v in dict2.items():
for i, j in dict2:
print (k, " is larger than ", i)
我收到此错误:ValueError: too many values to unpack (expected 2)
。
任何帮助将不胜感激!
答案 0 :(得分:2)
你有正确的想法。迭代两个dicts中的项目并进行比较
>>> dict1 = {'Canada' : 2.5, 'UK' : 3.7, 'USA' : 9.0}
>>> dict2 = {'a' : 7, 'b' : 2}
>>>
>>>
>>> for kd2, vd2 in dict2.items():
... for kd1, vd1 in dict1.items():
... if vd2 > vd1:
... print(kd2, "is larger than", kd1)
...
a is larger than Canada
a is larger than UK
答案 1 :(得分:0)
您获得的错误仅仅是因为您在迭代.items()
时遗漏了dict2
。您只是在重复密钥,因此它不知道如何处理i, j
。