我正在嘗試構建一個矩陣,該矩陣在多個級別中保存多個值。 我試圖生成字典建立這樣的:從包含鍵的列表創建字典的鍵
{'routername':{'channel':{'01':<value>,'02':<value>}}}
鍵上最高水平的數量可能會有所不同。
該腳本正在生成可用路由器列表和另一個可用通道列表。 我寫了一個相當麻煩的函數來測試一個關鍵字,如果它不在那裏,它會將關鍵字添加到字典中。
所以,我在想,如果沒有建立在與鍵空值的字典列表「路由器」
def AddToChart(passed_seq):
try:
if str(passed_seq[0]) in chart_dict:
if str(passed_seq[1]) in chart_dict[passed_seq[0]]:
if str(passed_seq[2]) in chart_dict[passed_seq[0]][passed_seq[1]]:
if str(passed_seq[3]) in chart_dict[passed_seq[0]][passed_seq[1]][passed_seq[2]]:
chart_dict[passed_seq[0]][passed_seq[1]][passed_seq[2]][passed_seq[3]].update(err_sub_dict)
else:
chart_dict[passed_seq[0]][passed_seq[1]][passed_seq[2]].update({passed_seq[3]:{}})
chart_dict[passed_seq[0]][passed_seq[1]][passed_seq[2]][passed_seq[3]].update(err_sub_dict)
else:
chart_dict[passed_seq[0]][passed_seq[1]].update({passed_seq[2]:{passed_seq[3]:{}}})
chart_dict[passed_seq[0]][passed_seq[1]][passed_seq[2]][passed_seq[3]].update(err_sub_dict)
else:
chart_dict[passed_seq[0]].update({passed_seq[1]:{passed_seq[2]:{passed_seq[3]:{}}}})
chart_dict[passed_seq[0]][passed_seq[1]][passed_seq[2]][passed_seq[3]].update(err_sub_dict)
else:
chart_dict.update({passed_seq[0]:{passed_seq[1]:{passed_seq[2]:{passed_seq[3]:{}}}}})
chart_dict[passed_seq[0]][passed_seq[1]][passed_seq[2]][passed_seq[3]].update(err_sub_dict)
except ValueError:
print "AddToChart: ",err_sub_dict,sys.exc_info()[1][0]
except:
print sys.exc_info()
print "AddToChart: variable not defined: " + str(passed_seq)
這是什麼語言?請標記語言! – 2013-02-26 12:56:43