Python-使用元组键对dict进行排序
我的问题与这个问题的答案有关:Python-使用元组键对dict进行排序,python,sorting,key,tuples,Python,Sorting,Key,Tuples,我的问题与这个问题的答案有关: 对于那些希望按键排序而不是按值排序的用户: import operator x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0} sorted_x = sorted(x.items(), key=operator.itemgetter(0)) 当我的键是元组时,如何对上述键进行排序?例如,A:{(-2929109664628200379,10):table,(-3884855813103006483,15):chair},使用键中的第二个数字进
对于那些希望按键排序而不是按值排序的用户:
import operator
x = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
sorted_x = sorted(x.items(), key=operator.itemgetter(0))
当我的键是元组时,如何对上述键进行排序?例如,A:{(-2929109664628200379,10):table,(-3884855813103006483,15):chair}
,使用键中的第二个数字进行排序
编辑通过创建一个函数
getKey
来返回我想要的值,现在我意识到这是一个微不足道的问题,谢谢@jornsharpe只需对键进行排序并进行查找,按第二个元素对键进行排序:
d = {(-2929109664628200379, 10): "table", (-3884855813103006483, 15): "chair"}
sted = [(k, d[k]) for k in sorted(d,key=itemgetter(1))]
使用
键进行排序有几十个问题
;您所需要的只是一个函数,它将输入(在本例中,是元组((keypart1,keypart2),value)
)映射到您想要排序的对象(keypart2
)。这是微不足道的。