我想創建一個字典,需要一個鍵並返回另一個字典,需要一個不同的鍵並返回一個值,但我很難實現這個。創建一個Python字典作爲一個字典的值(多級嵌套字典)
我已經試過類似:
FirstDict[key1]=SecondDict
SecondDict[key2]=Final Value
我希望能夠調用該函數的東西,如SecondDict [鍵1] [鍵2],但我不能這樣做。
我想創建一個字典,需要一個鍵並返回另一個字典,需要一個不同的鍵並返回一個值,但我很難實現這個。創建一個Python字典作爲一個字典的值(多級嵌套字典)
我已經試過類似:
FirstDict[key1]=SecondDict
SecondDict[key2]=Final Value
我希望能夠調用該函數的東西,如SecondDict [鍵1] [鍵2],但我不能這樣做。
您可以創建多層次的嵌套字典與collections.defaultdict
,這樣
from collections import defaultdict
def multi_level_dict():
return defaultdict(multi_level_dict)
你可以使用它像我測試了這個
my_dict = multi_level_dict()
my_dict[1][2][3] = "cabbage"
my_dict[1][4][5] = "salad"
from pprint import pprint
pprint(my_dict)
# {1: {2: {3: 'cabbage'},
# 4: {5: 'salad'}}}
>>> a = {}
>>> b = {}
>>> a['key1'] = b
>>> b['key2'] = 'final value'
>>> a['key1']
{'key2': 'final value'}
>>> a['key1']['key2']
'final value'
>>>
,它的作品!
a ['1'] = {'2':{'3':3}}然後調用['1'] ['2'] ['3'] – WeizhongTu
美麗,從來沒有見過這個,非常感謝! – smassey
如此聰明的方式,TIL〜 – zhangxaochen