A tuple is a collection similar to a Python list. The primary difference is that we cannot modify a tuple once it is created.
Create a Python Tuple
We create a tuple by placing items inside parentheses ()
. For example,
numbers = (1, 2, -5) print(numbers) # Output: (1, 2, -5)
More on Tuple Creation
We can also create a tuple using a tuple() constructor. For example,
tuple_constructor = tuple(('Jack', 'Maria', 'David')) print(tuple_constructor) # Output: ('Jack', 'Maria', 'David')
Here are the different types of tuples we can create in Python.
Empty Tuple
# create an empty tuple empty_tuple = () print(empty_tuple) # Output: ()
Tuple of different data types
# tuple of string types names = ('James', 'Jack', 'Eva') print (names) # tuple of float types float_values = (1.2, 3.4, 2.1) print(float_values)
Tuple of mixed data types
# tuple including string and integer mixed_tuple = (2, 'Hello', 'Python') print(mixed_tuple) # Output: (2, 'Hello', 'Python')
Tuple Characteristics
Tuples are:
- Ordered - They maintain the order of elements.
- Immutable - They cannot be changed after creation.
- Allow duplicates - They can contain duplicate values.
Access Tuple Items
Each item in a tuple is associated with a number, known as a index.
The index always starts from 0, meaning the first item of a tuple is at index 0, the second item is at index 1, and so on.

Access Items Using Index
We use index numbers to access tuple items. For example,
languages = ('Python', 'Swift', 'C++') # access the first item print(languages[0]) # Python # access the third item print(languages[2]) # C++

Tuple Cannot be Modified
Python tuples are immutable (unchangeable). We cannot add, change, or delete items of a tuple.
If we try to modify a tuple, we will get an error. For example,
cars = ('BMW', 'Tesla', 'Ford', 'Toyota') # trying to modify a tuple cars[0] = 'Nissan' # error print(cars)
Python Tuple Length
We use the len() function to find the number of items present in a tuple. For example,
cars = ('BMW', 'Tesla', 'Ford', 'Toyota') print('Total Items:', len(cars)) # Output: Total Items: 4
Iterate Through a Tuple
We use the for loop to iterate over the items of a tuple. For example,
fruits = ('apple','banana','orange') # iterate through the tuple for fruit in fruits: print(fruit)
Output
apple banana orange
More on Python Tuple
We use the in
keyword to check if an item exists in the tuple. For example,
colors = ('red', 'orange', 'blue') print('yellow' in colors) # False print('red' in colors) # True
Here,
- yellow is not present in
colors
, so,'yellow' in colors
evaluates toFalse
- red is present in
colors
, so,'red' in colors
evaluates toTrue
Python Tuples are immutable - we cannot change the items of a tuple once created.
If we try to do so, we will get an error. For example,
fruits = ('apple', 'cherry', 'orange') # trying to change the second item to 'banana' fruits[1] = 'banana' print(fruits) # Output: TypeError: 'tuple' object does not support item assignment
We cannot delete individual items of a tuple. However, we can delete the tuple itself using the del statement. For example,
animals = ('dog', 'cat', 'rat') # deleting the tuple del animals
Here, we have deleted the animals tuple.
When we want to create a tuple with a single item, we might do the following:
var = ('Hello') print(var) # string
But this would not create a tuple; instead, it would be considered a string.
To solve this, we need to include a trailing comma after the item. For example,
var = ('Hello',) print(var) # tuple # Output: ('Hello',)
Also Read: