0
Q
合併鍵
A
回答
1
你所要求的是不可能的。假想字典中的鍵使用可變列表。由於可變數據不能被散列,因此不能將它們用作字典鍵。
編輯,我有一個去做你所要求的,除了在這裏的關鍵是所有的元組。這段代碼很混亂,但你可能會清理它。
myDict = {'A':[1,2],
'B': [4,5],
'C': [1,2],
'D': [1, 2],
}
myDict2 = {k: tuple(v) for k, v in myDict.items()}
print(myDict2) #turn all vlaues into hasable tuples
#make set of unique keys
unique = {tuple(v) for v in myDict.values()}
print(unique) #{(1, 2), (4, 5)}
"""
iterate over each value and make a temp shared_keys list tracking for which
keys the values are found. Add the new key, vlaue pairs into a new
dictionary"""
new_dict = {}
for value in unique:
shared_keys = []
for key in myDict:
if tuple(myDict[key]) == value:
shared_keys.append(key)
new_dict[tuple(shared_keys)] = value
print(new_dict) #{('A', 'C'): (1, 2), ('B',): (4, 5)}
#change the values back into mutable lists from tuples
final_dict = {k: list(v) for k, v in new_dict.items()}
print(final_dict)
相關問題
- 1. mysql合併主鍵
- 2. 合併哈希鍵
- 3. 合併數組鍵
- 4. data.table:合併()一鍵表與雙鍵表
- 5. JPA合併外鍵丟失
- 6. 字典合併某些鍵
- 7. 與多個主鍵合併
- 8. PHP數組合並與鍵
- 9. PHP - 合併基於鍵
- 10. AWK-合併基於關鍵
- 11. PHP按鍵合併數組
- 12. 合併同類數組鍵
- 13. 合併2個數組併合並數字鍵的結果
- 14. PHP合併數組並保留鍵
- 15. 如何基於重複鍵合併/合併對象數組?
- 16. 合併php陣列合併而不移除數組鍵
- 17. Mysql的基礎上連續鍵值合併行,然後合併
- 18. 合併兩個數組後合併PHP關鍵字函數
- 19. PHP - 陣列合併 - 刪除數組鍵從數組合並
- 20. SQLAlchemy:將表數據與外鍵合併
- 21. Javascript加入/合併數組的鍵
- 22. 合併表的主鍵字段
- 23. PHP - 按鍵合併2D數組
- 24. ZF2 ModuleManager會配置合併 - 刪除鍵
- 25. 合併2陣列相同的鍵
- 26. 基於矢量鍵合併數據幀
- 27. SQL聚合密鑰並獲取主鍵
- 28. PHP - 合併多維數組中的鍵
- 29. 通過主鍵合併bash文件
- 30. 按鍵合併二維數組
我已經編輯了我的原始答案,讓你幾乎可以看到你所問的內容,但代碼卻是一團糟。 – Rosh