I often do sorts in Python using lambda expressions, and although it works fine, I find it not very readable, and was hoping there might be a better way. Here is a typical use case for me.
I have a list of numbers, e.g., x = [12, 101, 4, 56, ...]
I have a separate list of indices: y = range(len(x))
I want to sort y
based on the values in x
, and I do this:
y.sort(key=lambda a: x[a])
Is there a good way to do this without using lambda?