gpt4 book ai didi

python - 对列表值进行排序以获得其索引的新顺序,Python 方式

转载 作者:太空宇宙 更新时间:2023-11-03 13:02:28 24 4
gpt4 key购买 nike

抱歉我的问题标题含糊不清。
我的问题是,我有一个列表 a = [6, 9, 8, 10, 7, 5, 2, 3, 1, 4]
我需要获取新订单 b = [4, 2, 3, 5, 1, 6, 10, 8, 7, 9],其中 b 的第一个元素> 是 4 因为 a 的第 4 个元素 10 是 a 中最大的数。类似地,b 中的第二个元素是 2,因为 a 中的第二个大数是它的第二个数字 9

那么,希望您能回答我的问题:对列表 a 进行排序并获得新顺序 b

目前,我通过使用 list.sort 和一些准备来完成它。

tmp = zip(range(1,11), a)
tmp.sort(key=lambda x:(-x[1],x[0]))
b = [x[0] for x in tmp]

我想知道是否有更好的 python 方法来实现我的目标?
感谢您的任何建议~

最佳答案

我只想使用 key 参数通过 a 的值对 range(1, len(a) + 1) 进行排序.

sorted(range(1, len(a) + 1), key=lambda i: a[i-1], reverse=True)

关于python - 对列表值进行排序以获得其索引的新顺序,Python 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15149791/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com