pythonfunctiontuplessorting

How do I make a function that returns a list of tuples sorted by the last element in the tuple?


This is the code I am trying to run but it doesn't work. It says invalid syntax.

    def sort_last(tuples):
        return sorted(tuples, key = tuples[-1]


    x = [(7, 6), (5, 5), (2, 1)]
    print sort_last(x)

Solution

  • Use a lambda:

    def sort_last(tuples):
        return sorted(tuples, key = lambda t: t[-1])