I am trying to return a tuple the smallest second index value (y value) from a list of tuples. If there are two tuples with the lowest y value, then select the tuple with the largest x value (i.e first index).
For example, suppose I have the tuple:
x = [(2, 3), (4, 3), (6, 9)]
The the value returned should be (4, 3)
. (2, 3)
is a candidate, as x[0][1]
is 3
(same as x[1][1]
), however, x[0][0]
is smaller than x[1][0]
.
So far I have tried:
start_point = min(x, key = lambda t: t[1])
However, this only checks the second index, and does not compare two tuples first index if their second index's are equivalent.
min(x, key=lambda t: [t[1], -t[0]])
– Blackcock