编写一个程序来交换字典的键和值。
- 定义函数
swap_dict()
,参数为一个字典dict
。 - 在函数内部,反转给定字典的键和值。如果一个值出现多次,将对应键组合在一个列表中。
示例输入
{'Pizza': 'Food', 'Pasta': 'Food', 'Water': 'Drink', 'Coke': 'Drink'}
示例输出
{'Food': ['Pizza', 'Pasta'], 'Drink': ['Water', 'Coke']}
解释: 输入中
Food
的值出现多次,因此Food的键被保留在一个列表中['Pizza','Pasta']
。
def swap_dict(dict1):
dict2={}
zip1= zip(dict1.keys(), dict1.values())
# print(list(zip1))
for v,k in zip(dict1.values(),dict1.keys()):
# print(v,k)
if v in dict2:
dict2[v].append(k)
else:
dict2[v]=[k]
return dict2
# 读取输入的字典
dict1 = eval(input())
# 调用函数
print(swap_dict(dict1))