如何按键排序,然后按嵌套值排序

时间:2016-03-30 14:54:19

标签: python dictionary

考虑以下结构

 'source-document01013.txt': {'AAAGCTTACA': {'endPos': '141',
                                             'startPos': '132'},
                              'AAATCTTAGA': {'endPos': '105',
                                             'startPos': '96'},
                              'AAATGTCCCC': {'endPos': '75',
                                             'startPos': '66'}
                             }

我想按'source-document01013.txt'排序,然后按照startPos排序,我该如何解决?

我之前有一行,但现在我添加了一个嵌套的词典,这就破了。

newDict = sorted(dictionary.items(), key = lambda x: (x[1], int(x[1]['startPos'])))

错误:IndexError: tuple index out of range

1 个答案:

答案 0 :(得分:1)

l = []
for k, v in sorted(dictionary.items()):
    l.append((k, sorted(v.items(), key=lambda x: int(x[1]['startPos']))))