我有两个字典dict1和dict2。我想用dict2的键替换dict1的键。 dict1.keys()如下:
dict_keys(['8014.png54523', '7595.png37735', '6659.png50805', '8058.png26143','05324.png31372'])
dict2.keys()如下:
dict_keys(['8014.png671302', '7595.png567733', '6659.png681968', '8058.png442154', '05324.png530138'])
我想要dict2.keys()作为dict1.keys。谁能帮我吗。
谢谢!
答案 0 :(得分:1)
代码
new_dict = {k2:dict1[k1] for k1, k2 in zip(dict1.keys(), dict2.keys())}
测试
键和虚拟值
keys1 = ['8014.png54523', '7595.png37735', '6659.png50805', '8058.png26143','05324.png31372']
vals1 = list(range(len(keys1)))
keys2 = ['8014.png671302', '7595.png567733', '6659.png681968', '8058.png442154', '05324.png530138']
vals2 = list(range(len(keys1)))
词典
dict1 = dict(zip(keys1, vals1))
dict2 = dict(zip(keys2, vals2))
新词典
# Have each k1, v1 in dict1
# and k2, v2 from dict2
# new dict uses k2:v1
# where v1 = dict1[k1]
new_dict = {k2:dict1[k1] for k1, k2 in zip(dict1.keys(), dict2.keys())}
print(new_dict)
输出
{'8014.png671302': 0, '7595.png567733': 1, '6659.png681968': 2, '8058.png442154': 3, '05324.png530138': 4}
答案 1 :(得分:0)
您可以尝试以下方法:
new_dict1 = {new_key: dict1[old_key] for old_key, new_key in zip(dict1.keys(), dict2.keys())}