Выбор максимального значения из другого списка в python - PullRequest
0 голосов
/ 05 августа 2020

У меня есть список, который выглядит примерно так, который я смог получить после очистки веб-сайта, но в данном случае это разные размеры изображений с веб-сайта:

[72, 72]
[95, 96]
[13, 60]
[227, 973]

Я пробовал это но это не дает мне того, что я хочу:

    for items in height, width:
        dimension.append(items)
    print(max(dimension))

Я хочу иметь возможность выбрать тот, у которого максимальное значение:

[227, 973]

1 Ответ

2 голосов
/ 05 августа 2020

Я предполагаю, что у вас есть двумерный список и вы заинтересованы в поиске подсписка, который содержит максимальный элемент.

Чтобы найти это, вы можете просто использовать функцию max, встроенную в pythons, и предоставить функция сравнения через параметр key. Ключевой параметр принимает функцию, результат которой используется для сравнения, например: key=lambda sublist: max(sublist). В этом случае вы даже можете просто передать саму функцию max() как key

Подводя итог, у вас должно сработать что-то вроде этого:

x = [[72, 72], [95, 96], [13, 60], [227, 973]]
 
max_pair = max(x, key=max)
print(max_pair)

После обсуждения с вами , я предполагаю, что вы получаете значения размеров в a для l oop (и не имеете их в списке в начале) и хотите получить максимум на конец. Я немного изменил ваш код и надеюсь, что это сработает для вас. Он по-прежнему использует ту же идею, что упоминалось ранее:

dimensions = []
for something in something_else:
    image = get_image()
    height, width, _ = image.shape
    dimensions.append([height, width])
max_dimension = max(dimensions, key=max)
print(max_dimension)
...