我的字典裏是這樣的:蟒蛇:排序3級嵌套的字典
{modID1:{sequences1:{header1:count1},sequences2:{header2:count2}...},
modID2:{sequences1:{header1:count1},sequences2:{header2:count2}...}....}
我想通過 「計數」, 例如排序扭轉 「序列」:
{modID1:
{sequences1:{header1: 3},sequences2:{header2:5},
sequences3: {header3:1}...},
modID2:{sequences1:{header1:1},sequences2:{header2:8},...},
....}
通緝輸出:
{modID1:
{sequences2:{header2:5},sequences1:{header1: 3},
sequences3:{header3:1}...},
modID2:{sequences2:{header2:8},sequences1:{header1:1},...},
....}
我已經看到一些帖子,我試圖用這樣的:
for k,v in Dic.iteritems():
sorted=OrderedDict(sorted(v.iteritems(), key=lambda h: v[seq for seq in v][header], reverse=True))
但我想我沒有得到完全此功能,這樣不正常的使用。建議?
預先感謝您
工作你要包含其它'OrderedDict's的'OrderedDict'。目前,你正在創建一個'OrderedDict',其中包含'dict's –
你也可以通過賦值將'sorted'內建隱藏到'sorted',所以第二次繞着循環一切都會中斷。你真的有字典只有一個鍵,價值對在底部 - 不會是一個元組嗎? – AChampion
底部的{header:count}在創建Dic期間被修改,實際上「count」從1開始,並且可以增加。創建Dic之後,有一種方法可以將它轉換爲元組?或者我可以從一開始修改元組? –