В чем разниц между list.sort() и sorted() в Python.
В Python есть два способа сортировки списка: встроенный метод списка list.sort () и встроенная функцию sorted (). Хотя оба будут сортировать элементы списка, при неправильном использовании они могут привести к неожиданным или нежелательным результатам. Различия и сходства Основное различие между ними заключается в том, что list.sort () сортирует список на месте, изменяя его индексы и возвращая None, тогда как sorted () возвращает новый отсортированный список, оставляя исходный список неизменным. Другое отличие состоит в том, что sorted () принимает любые итерации, в то время как list.sort () является методом класса списка и может использоваться только со списками.
nums = [2, 3, 1, 5, 6, 4, 0]
print(sorted(nums)) # [0, 1, 2, 3, 4, 5, 6]
print(nums) # [2, 3, 1, 5, 6, 4, 0]
print(nums.sort()) # None
print(nums) # [0, 1, 2, 3, 4, 5, 6]
Когда использовать какой метод list.sort () следует использовать всякий раз, когда предполагается изменение списка и вы не хотите сохранить исходный порядок элементов. С другой стороны, sorted () следует использовать, когда сортируемый объект является итеративным (например, список, кортеж, словарь, строка), а желаемый результат - это отсортированный список, содержащий все элементы.
+1
7
+1
11
+1
+1
1
+1
4