#list #variables
Вопрос:
мой список = [1, 2, 3, 4, 5, 6, 7, 8, 9]
обратный список = мой список.сортировка(обратный=True) печать(обратный список)
Когда я набираю этот код, python возвращает слово «Нет», и я не могу понять, почему я не могу назначить переменную в качестве перевернутого списка. Мы будем очень признательны за объяснение или решение этой проблемы.
Ответ №1:
Метод sort()
ничего не возвращает. Вместо этого он изменяет список на месте. Таким образом, правильный код будет:
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
reversed_list = my_list.copy()
reversed_list.sort(reverse=True)
print(reversed_list)
Если вам не нужны оба списка, вы можете избежать копирования и my_list
вместо этого выполнить сортировку, тем самым сэкономив немного памяти.
Ответ №2:
Вы можете использовать, если не хотите изменять объект списка. sorted()
sorted()
функция может сортировать любые повторяющиеся элементы и возвращать список элементов в этом повторяющемся отсортированном виде.
Например, sorted('abicd', reverse=True)
вернется ['i', 'd', 'c', 'b', 'a']
Сортировка изменяет объект списка ур на месте и не возвращает ничего, т. е. None
в python.
Вы можете лучше закодировать это так:
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
reversed_list = sorted(my_list, reverse=True)
print(reversed_list)