我想获得具有两个约束的字典的相反顺序。首先,我根据值进行排序:
>>> d = {'I C': (2, 4), 'B I C': (2, 6), 'B I': (2, 6)}
>>> sortd = sorted(d.items(), key=lambda v: v[1], reverse=True) (1)
>>> sortd
[('B I', (2, 6)), ('B I C', (2, 6)), ('I C', (2, 4))]
其次,对于具有相同值的项目,我想获得之前键最长的项目。在我之前的示例中,我希望得到以下结果:
[('B I C', (2, 6)), ('B I', (2, 6)), ('I C', (2, 4))]
是否可以直接在我的sorted()
命令(1)中执行?