Python - 把扁平化字典轉換成巢狀字典
Python 字典包含鍵和值。如果我們有兩個或更多個要合併為巢狀字典的字典,那麼我們可以採用以下方法。這裡,字典給出帶有新鍵,這些新鍵將成為巢狀字典中的鍵。
分配鍵
在此方法中,我們將建立一個新的空字典。然後,將給定的字典分別分配給每個新鍵。結果字典將是帶有分配的鍵的巢狀字典。
示例
dictA = {'Sun': 1, 'Mon': 2}
dictB = {'Tue': 3, 'Sun': 5}
# Given Dictionaries
print("DictA : ",dictA)
print("DictB: ",dictB)
# Using key access and dict()
res = dict()
res['Netsed_dict_1'] = dictA
res['Netsed_dict_2'] = dictB
# printing result
print("Netsed Dictionary: \n" ,res)執行上述程式碼會給出以下結果 −
輸出
DictA : {'Sun': 1, 'Mon': 2}
DictB: {'Tue': 3, 'Sun': 5}
Netsed Dictionary:
{'Netsed_dict_1': {'Sun': 1, 'Mon': 2}, 'Netsed_dict_2': {'Tue': 3, 'Sun': 5}}使用 zip
zip 函式可以將鍵和字典轉換為元組。然後,我們應用 dict 函式以獲得最終結果,這是一個包含新鍵和輸入字典的字典。
示例
dictA = {'Sun': 1, 'Mon': 2}
dictB = {'Tue': 3, 'Sun': 5}
# Given Dictionaries
print("DictA : ",dictA)
print("DictB: ",dictB)
# Using zip
dict_keys = ['Netsed_dict_1','Netsed_dict_2']
all_dicts = [dictA,dictB]
res = dict(zip(dict_keys,all_dicts))
# printing result
print("Netsed Dictionary: \n" ,res)執行上述程式碼會給出以下結果 −
輸出
DictA : {'Sun': 1, 'Mon': 2}
DictB: {'Tue': 3, 'Sun': 5}
Netsed Dictionary:
{'Netsed_dict_1': {'Sun': 1, 'Mon': 2}, 'Netsed_dict_2': {'Tue': 3, 'Sun': 5}}
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP