在Python中,可以使用内置的sorted()
函数和enumerate()
函数来获取字典排序列表的索引。
首先,假设有一个字典my_dict
,我们想要按照字典的值进行排序并获取排序后的索引列表。
my_dict = {'a': 5, 'b': 2, 'c': 7, 'd': 1}
我们可以使用sorted()
函数对字典的值进行排序,并使用enumerate()
函数获取排序后的索引列表。
sorted_indexes = [i for i, _ in sorted(enumerate(my_dict), key=lambda x: x[1])]
在上述代码中,enumerate(my_dict)
将字典转换为一个包含索引和值的元组列表。sorted()
函数根据元组的第二个元素(即字典的值)进行排序。最后,使用列表推导式提取排序后的索引列表。
现在,sorted_indexes
将包含按照字典值排序的索引列表。
如果要获取按照字典键排序的索引列表,可以将enumerate()
函数中的参数改为my_dict.keys()
。
sorted_indexes = [i for i, _ in sorted(enumerate(my_dict.keys()), key=lambda x: x[1])]
这样,sorted_indexes
将包含按照字典键排序的索引列表。
这是一个完整的答案,涵盖了如何在Python中获取字典排序列表的索引。
领取专属 10元无门槛券
手把手带您无忧上云