Почему десятка обогнала двойку
Почему десятка обогнала двойку
Смотри на кавычки: в списке ['1', '10', '2'] лежат строки. Сортировка даёт ['1', '10', '2']. Почему '10' оказалась раньше '2'?
Python сравнивает строки слева направо. У '10' первый символ - '1', который идёт раньше '2'. А строка '1' является началом строки '10', поэтому при таком совпадении более короткая строка идёт первой.
Для числового порядка используем sorted(values, key=int). При сравнении Python получает числа 1, 2 и 10, а исходные элементы остаются строками.
Результат: ['1', '2', '10']. Параметр key изменил правило сравнения, а не тип элементов.
https://academy-s.ru/
#информатика #программирование #огэ #егэ #репетитор
Открыть оригинал в ВКПост и комментарии в сообществе