Memory Management in Python: Comparing sort() and sorted() for Efficiency

Zalwert
3 min readJul 22, 2024

Both `sort()` and `sorted()` are used for sorting in Python, but they have some differences in their use cases and performance implications.

Let’s see and compare them on some generic examples!

sort()

In-place: The sort() method sorts the list in place, meaning it modifies the original list and does not create a new list.
Return Value: Returns `None`.
Usage: It is used as a method of list objects.

my_list = [3, 1, 2]
my_list.sort()
print(my_list) # Output: [1, 2, 3]

sorted()

Out-of-place: The sorted() function returns a new sorted list and does not modify the original list.
Return Value: Returns a new sorted list.
Usage: It can be used with any iterable (lists, tuples, dictionaries, etc.).

my_list = [3, 1, 2]
sorted_list = sorted(my_list)
print(sorted_list) # Output: [1, 2, 3]
print(my_list) # Output: [3, 1, 2]

Performance Comparison

In terms of performance, sort() is generally faster than sorted() when you need to sort a list because sort() modifies the list in place without creating a copy…

--

--

Zalwert

Experienced in building data-intensive solutions for diverse industries