【工程類】【Python】辞書ネスト賦値
3224 ワード
時々、辞書をネストする必要がありますが、取り出すたびに存在するかどうかを判断するので、辞書を容易に初期化する方法があることを望んでいます.以下に、辞書ネストの初期化方法を示します.
def pack_data():
dic = {}
list1=[1,2,3]
list2=[4,5,6]
list3=[7,8,9]
for layer1 in list1:
dic[layer1] = {}.fromkeys(list2)
for layer2 in list2:
dic[layer1][layer2] = {}.fromkeys(list3)
for layer3 in list3:
dic[layer1][layer2][layer3]=5
return dic
'''
:
{1: {4: {8: 5, 9: 5, 7: 5},
5: {8: 5, 9: 5, 7: 5},
2: {4: {8: 5, 9: 5, 7: 5},
5: {8: 5, 9: 5, 7: 5},
3: {4: {8: 5, 9: 5, 7: 5},
5: {8: 5, 9: 5, 7: 5},
6: {8: 5, 9: 5, 7: 5}}}
'''