May-04-2020, 11:33 AM
You can use the itemgetter.
from operator import itemgetter tup = [(1, 7), (1, 3), (3, 4, 5), (2, 2)] sorted(tup, key=itemgetter(-1))The itemgetter could also used to access keys in a dict:
data = [{"x": 10, "y": 42},{"x": 20, "y": 44},{"x": 13, "y": -1}] # sort by x sorted(d, key=itemgetter("x")) # sort by x and then y sorted(d, key=itemgetter("x", "y")) # sort by y and then x sorted(d, key=itemgetter("y", "x"))How it works:
my_itemgetter = itemgetter(1) # the itemgetter returns a callable, which takes the sequence as input my_itemgetter([1,2,3])
Output:2
If you call it in one line, it looks a bit strange:itemgetter(1)([1,2,3])
Almost dead, but too lazy to die: https://sourceserver.info
All humans together. We don't need politicians!
All humans together. We don't need politicians!