Нахождение необходимой пары Python
Всем привет. Подскажите с задачкой.
Имеется список:
[(0, 0), (-5, 2), (2, -5), (4, 4), (2, -1)]
в котором лежат кортежи (можно заменить на списки, не важно) с координатами x и y.
Нужно вывести 2 пары x и y: первая - левее всех на графике вторая - выше всех.
Например: из этого списка левее всех пара (-5, 2), а выше всех - (4, 4)
Как вообще можно это реализовать?
Ответы (1 шт):
lst = [(0, 0), (-5, 2), (2, -5), (4, 4), (2, -1)]
print(min(lst))
print(max(lst, key=lambda a: a[1]))
min и max сортируют в начале по первым элементам кортежа. если они одинаковые - то сравниваются вторые. Поэтому чтобы найти крайнюю левую точку, просто ищем min, найдется минимальный x(первый элемент), а чтобы найти самую верхнюю точку я использовал key и lambda функцию. lambda берет кортеж и передает на сортировку только его второй элементы a[1], то есть сортировка идет по вторым элементам кортежа.