Что выведет этот код?


a = [3, 1, 2]
print(sorted(a))
print(a)

Первая строка выведет [1, 2, 3], потому что функция sorted() возвращает новый отсортированный список, не изменяя исходный.

Вторая строка выведет [3, 1, 2], потому что исходный список a остался без изменений.


Данный код демонстрирует разницу между функцией sorted() и методом sort(), применяемыми к спискам в Python.

Функция sorted(a):

  • Возвращает новый отсортированный список, созданный на основе элементов списка a.
  • Исходный список a при этом не изменяется.
  • В результате первого print(sorted(a)) на экран будет выведено [1, 2, 3].

Второй print(a):

  • Выводит на экран исходный список a, который остался неизменным.
  • В результате второго print(a) на экран будет выведено [3, 1, 2].

Краткое резюме: Функция sorted() возвращает новый отсортированный список, не изменяя исходный. Если требуется отсортировать список "на месте" (in-place), используется метод a.sort() (который не возвращает никакого значения, а изменяет сам список a).

0