Python Tuples – The Locked Box of Data Storage

Anindita GhoshAnindita Ghosh
5 min read

Tuple Operations in Python

Python Tuple is a collection of objects separated by commas. A tuple is similar to a Python list in terms of indexing, nested objects, and repetition, but the main difference between the two is that Python tuple is immutable, unlike a Python list, which is mutable.

# Here we use round brackets ()
tup = (10, 20, 30) 

print(tup)                 # (10, 20, 30)
print(type(tup))           # <class 'tuple'>

What is Immutability in Tuples?

Some Characteristics of Tuples in Python.

  • Like Lists, tuples are ordered, and we can access their elements using their index values.

  • We cannot update items to a tuple once it is created. 

  • Tuples cannot be appended or extended.

  • We cannot remove items from a tuple once it is created.

    Accessing Values in Python Tuples:

    Tuples in Python provide two ways by which we can access the elements of a tuple.

  • Python Access Tuple using a Positive Index-

    Using square brackets, we can get the values from tuples in Python.

  •           tup = (10, 5, 20)
    
              print("Value in tup[0] = ", tup[0])      # Output -> 10
              print("Value in tup[1] = ", tup[1])      # Output -> 5
    

    Access Tuple using Negative Index-

    In the above methods, we use the positive index to access the value in Python, and here we will use the negative index within [].

  •           tup = (10, 5, 20)
    
              print("Value in tup[-1] = ", tup[-1])      # Output -> 20
              print("Value in tup[-2] = ", tup[-2])      # Output -> 5
    

    Concatenation of Python Tuples:

    To Concatenation of Python Tuples, we will use the plus operator (+).

  •           # Define two tuples
              tuple1 = (1, 2, 3)
              tuple2 = (4, 5, 6)
    
              # Concatenate them
              combined = tuple1 + tuple2
              print("Concatenated Tuple:", combined) 
              # output -> Concatenated Tuple: (1, 2, 3, 4, 5, 6)
    

    Tuple Built-In Methods:

    Tuples support only a few methods due to their immutable nature. The two most commonly used methods are count() and index().

MethodDescriptionExampleOutput
count(x)Returns the number of times x appears in the tuple(1, 2, 2, 3).count(2)2
index(x)Returns the index of the first occurrence of x(1, 2, 3).index(2)1
  • Useful Built-in Functions with Tuples:

    Although tuples have few methods, many built-in functions can operate on them.

FunctionDescriptionExampleOutput
len()Returns the number of elements in the tuplelen((1, 2, 3))3
max()Returns the maximum value in the tuplemax((5, 2, 9, 1))9
min()Returns the minimum value in the tuplemin((5, 2, 9, 1))1
sum()Returns the sum of all numeric elementssum((1, 2, 3))6
any()Returns True If any element is Trueany((0, False, 5))True
all()Returns True If all elements are Trueall((1, True, 3))True
sorted()Returns a sorted list from the tuple elementssorted((3, 1, 2))[1, 2, 3]
tuple()Converts another iterable into a tupletuple([1, 2, 3])(1, 2, 3)
enumerate()Returns an enumerate object (useful in loops)list(enumerate(('a', 'b')))[(0, 'a'), (1, 'b')]
in keywordChecks if an item exists in the tuple'a' in ('a', 'b')True

Deleting a tuple:

Tuples cannot have any of their elements deleted since they are immutable. Using the del() function deletes the whole tuple.

An error is produced while printing a tuple that has been deleted.

Tuple vs List:

FeatureTupleList
Syntax() e.g. (1, 2, 3)[] e.g. [1, 2, 3]
MutabilityImmutable (cannot be changed)Mutable (can be changed)
MethodsFewer methods (e.g., count, index)More methods (e.g., append, remove, sort, etc.)
PerformanceSlightly faster than listsSlightly slower than tuples
Use CaseWhen data should not changeWhen data needs to change
MemoryUses less memoryUses more memory

Use Cases of Tuples:

    • Coordinates or points in a 2D or 3D space.

      • Returning multiple values from a function.

      • Storing records that should not change (e.g., database rows).

      • As keys in a dictionary, where you need multiple elements to describe one key.

Here are some code snippets in Colab about Python Tuples:

Conclusion:

In this blog, we explored tuples, a key data structure in Python known for being ordered, immutable, and efficient. Tuples are ideal when we need to store a fixed set of values that shouldn't change, such as coordinates, configuration settings, or grouped data like a student record.

We saw that tuples:

  • Maintain a specific order, allowing indexing and slicing.

  • Cannot be modified once created, ensuring data integrity.

  • Perform better than lists in terms of speed and memory usage.

  • Can be used in versatile ways—from function return values to dictionary keys.

We also walked through essential operations like indexing, slicing, concatenation, and compared tuples with lists to understand their appropriate use cases.

In short, mastering tuples helps us write more reliable, organized, and efficient Python code.

Hope you enjoyed reading this blog and gained some useful insights from it!

Thanks for reading!😁

11
Subscribe to my newsletter

Read articles from Anindita Ghosh directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Anindita Ghosh
Anindita Ghosh