質問のタイトルがあいまいで申し訳ありません。
私の質問は、a = [6, 9, 8, 10, 7, 5, 2, 3, 1, 4]
新しい order を取得する必要があるリストがありますb = [4, 2, 3, 5, 1, 6, 10, 8, 7, 9]。ここで、の最初の要素bは4、の 4 番目の要素がa 10a の最大数であるためです。同様に、 の 2 番目の要素はb、2a の 2 番目に大きい数が 2 番目の数であるためです。9
それで、うまくいけば、あなたは私の質問を得たと思います: Sort the list aand get the new order 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の方法があるかどうか疑問に思いますか?
提案をありがとう〜