Справочник · модуль 4 «Списки и текст»
Сортировка sorted()
Команда sorted возвращает новый отсортированный список. Метод sort сортирует сам список на месте.
Сравнение из жизни
Как разложить карточки по порядку.
Пример
nums = [4, 9, 2]
print(sorted(nums))
print(nums)
nums.sort()
print(nums)[2, 4, 9] [4, 9, 2] [2, 4, 9]
Учитель в уроке Команда sorted даёт новый список по порядку, а старый не трогает. Метод sort сортирует сам список. Он, как и append, ничего не возвращает.
Запомнить
sorted — как разложить по порядку копии карточек. А sort меняет порядок в самой стопке.
Частые ошибки новичков на этой теме
Кажется: Изменить переменную цикла значит изменить список
На самом деле: x — копия текущего значения. Чтобы поменять список, меняем lst[i].
Кажется: Менять список на ходу цикла безопасно
На самом деле: Когда удаляем элемент, остальные сдвигаются и цикл перескакивает через соседа. Собираем новый список.
Тема из урока 4.3 «Список в цикле» курса PythonAZ.