0
0
PythonHow-ToBeginner · 3 min read

How to Sort a Tuple in Python: Simple Guide

In Python, you can sort a tuple by using the sorted() function, which returns a sorted list of the tuple's elements. Since tuples are immutable, sorting creates a new list; to get a sorted tuple, convert the list back using tuple().
📐

Syntax

The basic syntax to sort a tuple is:

  • sorted(tuple): Returns a sorted list of the tuple's elements.
  • tuple(sorted(tuple)): Converts the sorted list back to a tuple.

The sorted() function accepts optional parameters like reverse=True to sort in descending order.

python
sorted_tuple = tuple(sorted(your_tuple))
💻

Example

This example shows how to sort a tuple of numbers in ascending order and then convert it back to a tuple.

python
numbers = (5, 2, 9, 1)
sorted_numbers = tuple(sorted(numbers))
print(sorted_numbers)
Output
(1, 2, 5, 9)
⚠️

Common Pitfalls

Tuples cannot be sorted in place because they are immutable. Trying to call sort() on a tuple will cause an error. Also, remember that sorted() returns a list, so if you need a tuple, you must convert it back.

python
wrong = (3, 1, 4)
# This will cause an error:
# wrong.sort()

# Correct way:
sorted_tuple = tuple(sorted(wrong))
print(sorted_tuple)
Output
(1, 3, 4)
📊

Quick Reference

Summary tips for sorting tuples in Python:

  • Use sorted() to get a sorted list from a tuple.
  • Convert the sorted list back to a tuple with tuple() if needed.
  • Use reverse=True in sorted() to sort descending.
  • Tuples are immutable; you cannot sort them in place.

Key Takeaways

Use sorted() to sort a tuple because tuples cannot be changed directly.
Convert the sorted list back to a tuple with tuple() if you want a tuple result.
Remember that sorted() returns a new list and does not modify the original tuple.
Use the reverse=True argument in sorted() to sort in descending order.
Trying to call sort() on a tuple will cause an error because tuples are immutable.