考虑一个任意元素的列表 A 和另一个与 A 长度相同的数字列表 f 。我想对 A 进行排序,以使 A 的 i 列按 f [ i ]。我目前的方法是
A=['a','b','c']
f=[3,2,1]
map(
lambda (_,b): b,
sorted(
list(enumerate(A)),
key=lambda (i, _): f[i]
)
)
我认为这不是解决问题的最佳方法...老实说,这看起来更像LISP,而不是Python。
那么,实现这一目标的一种优雅方法是什么?