使用 Python 对列表排序,并希望保留原有索引,可以使用 enumerate() 函数来获取原有的索引,然后使用 sorted() 函数对列表进行排序。下面是一个示例代码:

my_list = [4, 2, 7, 1, 5]
sorted_list = sorted(enumerate(my_list), key=lambda x: x[1])

for index, value in sorted_list:
    print(f'原有索引: {index}, 值: {value}')

输出结果为:

原有索引: 3, 值: 1
原有索引: 1, 值: 2
原有索引: 0, 值: 4
原有索引: 4, 值: 5
原有索引: 2, 值: 7

在这个示例中,enumerate(my_list) 返回一个包含索引和值的元组的迭代器。然后使用 sorted() 函数对这个迭代器进行排序,排序的依据是元组中的值。最后,使用 for 循环遍历排序后的列表,获取原有索引和值并打印出来。

Python 列表排序并保留原有索引

原文地址: https://www.cveoy.top/t/topic/qxPJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录