簡體   English   中英

如何用另一本字典的鍵替換字典的鍵?

[英]How replace keys of a dictionary with keys of another dictionary?

我有兩個字典 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。 誰能幫我嗎。

謝謝!

代碼

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}

你可以試試這個:

new_dict1 = {new_key: dict1[old_key] for old_key, new_key in zip(dict1.keys(), dict2.keys())}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM