Есть scores = [3, 1, 2]. Нужно получить новый отсортированный список, не изменяя исходный scores. Что выбрать?

Asorted(scores): возвращает новый отсортированный список, исходный scores не меняется
Bscores.sort(): сортирует список на месте и возвращает None после изменения
Csort(scores): вызов глобальной функции sort приведёт к NameError
Dscores.sorted(): вызов несуществующего метода списка приведёт к AttributeError
Правильный ответ. sorted() возвращает новый список, а .sort() сортирует список на месте и возвращает None.

Разбор

Если важно не менять исходный список (например, он нужен для других вычислений), используют sorted(scores) — функция создаёт новый отсортированный список. Метод .sort() сортирует список на месте и возвращает None, поэтому он удобен, когда исходный список менять можно. Глобальной функции sort() в Python нет, а у списков нет метода .sorted() — оба варианта приведут к ошибке.

Проверь себя · 1/3разбор после ответа
Дан список nums = [10, 20, 1, 30]. Чем отличаются nums.remove(1) и del nums[1]?
Тренировать Python в Telegram

Ещё вопросы по теме «Коллекции и структуры данных»