alarm
Задайте вопрос
Информатика
Munirius

Отсортировать по убыванию элементов последнего столбца целочисленный двухмерный массив 5×4. На языке Python. ​

ответы: 1
Зарегистрируйтесь, чтобы добавить ответ
Ответ:

array = [[1,2,3,4,5], [5,2,5,7,2], [8,12,56,3,0], [12,12,12,12,12]]

array. sort(key = lambda x: x[-1], reverse=True)

print(array)

5*4 - это не точное описание размерности. Я сделал 4 объекта по 5 элементов, так принято измерять матрицы - сначала строки, потом столбцы, но может быть и наоборот.

Функия sort у списков опционально принимает параметр key, в который можно записать лямбду для преобразования исходных элементов массива в какие-то иные, чтоб сравнивать затем уже их.

То есть если передан key, то будут сраниваться не сами объекты массива, а то, что вернула лямбда, применённая к каждому из объектов. Вот мы как раз и хотим, чтоб сравнивались не сами массивы, а их последние элементы.

Мы знаем, что объекты массива верхнего уровня - это тоже массивы, а значит лямбда будет принимать массивы длиной 5 элементов, и для каждого из них надо будет отдать последний элемент под индексом 4. Можно было написать lambda x: x[4], но проще воспользоваться фичей питона - отрицательными индексами.

Ну и reverse указываем, потому что по умолчанию sort сортирует по возрастанию (неубыванию)

227
merchant
Чтобы ответить необходимо зарегистрироваться.

Другие вопросы: - Информатика

На вход алгоритма подаётся натур

7)Камера делает фотоснимки разме

23) Исполнитель Калькулятор прео

посчитайте вообще ничего не пойм

50б. посчитайте, Создать ра

nick = input ("Никнейм игрока?:

Контакты
Реклама на сайте