我有两个字典:(1)Inventory and (2)Items
在这些词典下是元组,使用用户的输入添加了元组。
dict_inventory = {('fruits', ['apple','mango'])
dict_items = {('apple', [3, 5])
('mango', [4, 6])}
如何比较两者并匹配相似的值apple
和mango
我的代码未打印任何内容:
for itemA in dict_inventory.values():
for itemB in dict_items.keys():
if itemA == itemB:
print("Match!")
答案 0 :(得分:1)
当您遍历值时,原始for-loop
从清单字典中获取的值是list
而不是string
。由于它返回了一个列表,因此您还需要遍历这些值。这应该使您运行:
inventory = {
"fruits": ["apples", "mangos",]
}
items = {
"apples": [3, 5],
"mangos": [4, 6],
}
for value in inventory.values():
for item_a in value:
if item_a in items.keys():
print("Match!")
但是,您可以合并两个字典。
inventory = {
"fruits": {
"apples": [3, 5],
"mangos": [4, 6],
}
}