Tuples are an essential data structure in Python, offering a convenient way to store ordered and immutable data collections.
In this blog, you’ll learn everything about tuples in Python, including creation, slicing, methods, and more.
Letโs jump right into it!๐
Tuples in Python
Tuples are an ordered collection of data items. In tuples, you can store multiple items in a single variable.
Tuples are immutable, i.e., you cannot change them after creation.
Creating Tuples in Python
Tuples are defined using round brackets ()
, and items are separated by commas.
A tuple can contain items of different data types.
For example:
tuple1 = (1,2,36,3,15) tuple2 = ("Red", "Yellow", "Blue") tuple3 = (1, "John",12, 5.3) print(tuple1) # (1, 2, 36, 3, 15) print(tuple2) # ('Red', 'Yellow', 'Blue') print(tuple3) # (1, 'John', 12, 5.3)
Single-Item Tuples
To create a tuple with one item, add a comma after the item. Without a comma, Python will treat it as an integer type.
For example:
tuple1 = (1) # This is an integer. print(type(tuple1)) # <class 'int'> tuple2 = (1,) # This is a tuple. print(type(tuple2)) # <class 'tuple'>
Length of Tuple
You can find the length of a tuple (number of items in a tuple) using len()
function.
For example:
tuple1 = (1,2,36,3,15) lengthOfTuple = len(tuple1) print(lengthOfTuple) # 5
Accessing Items of Tuples in Python
You can access tuple items/elements using indexing. Each element has its unique index.
Indexing starts from 0 for the first element, 1 for the second element, and so on.
For example:
fruits = ("Orange", "Apple", "Banana") print(fruits[0]) # Orange print(fruits[1]) # Apple print(fruits[2]) # Banana
You can also access elements from the end of the tuple (-1 for the last element, -2 for the second-to-last element, and so on), this is called negative indexing.
For example:
fruits = ("Orange", "Apple", "Banana") print(fruits[-1]) # Banana print(fruits[-2]) # Apple print(fruits[-3]) # Orange # for understanding, you can consider this as fruits[len(fruits)-3]
Check if an item is present in the tuple?
You can check whether an element is present in the tuple or not, using the in
keyword.
Example 1:
fruits = ("Orange", "Apple", "Banana") if "Orange" in fruits: print("Orange is in the tuple.") else: print("Orange is not in the tuple.") #Output: Orange is in the tuple.
Example 2:
numbers = (1, 57, 13) if 7 in numbers: print("7 is in the tuple.") else: print("7 is not in the tuple.") # Output: 7 is not in the tuple.
Slicing Tuples in Python
You can get a range of tuple items by giving start, end, and jump(skip) parameters.
Syntax:
tupleName[start : end : jumpIndex]
Note: jump Index is optional.
Example 1:
# Printing elements within a particular range numbers = (1, 57, 13, 6, 18, 54) # using positive indexes(this will print the items starting from index 2 and ending at index 4 i.e. (5-1)) print(numbers[2:5]) # using negative indexes(this will print the items starting from index -5 and ending at index -3 i.e. (-2-1)) print(numbers[-5:-2])
Output:
(13, 6, 18) (57, 13, 6)
Example 2:
When no end index is provided, the interpreter prints all the values till the end.
# Printing all elements from a given index to till the end numbers = (1, 57, 13, 6, 18, 54) # using positive indexes print(numbers[2:]) # using negative indexes print(numbers[-5:])
Output:
(13, 6, 18, 54) (57, 13, 6, 18, 54)
Example 3:
When no start index is provided, the interpreter prints all the values from start up to the end index provided.
# Printing all elements from start to a given index numbers = (1, 57, 13, 6, 18, 54) #using positive indexes print(numbers[:4]) #using negative indexes print(numbers[:-2])
Output:
(1, 57, 13, 6) (1, 57, 13, 6)
Example 4:
You can print alternate values by giving jump index.
# Printing alternate values numbers = (1, 57, 13, 6, 18, 54) # using positive indexes(here start and end indexes are not given and 2 is jump index.) print(numbers[::2]) # using negative indexes(here start index is -2, end index is not given and 2 is jump index.) print(numbers[-2::2])
Output:
(1, 13, 18) (18)
Manipulating Tuples in Python
Tuples are immutable, so items cannot be added, removed, or changed. However, you can convert a tuple to a list, modify the list, and convert it back to a tuple.
For example:
fruits = ("Apple", "Orange", "Plum", "Banana") fruits_list = list(fruits) # Convert to list fruits_list.append("Guava") # Modify the list fruits = tuple(fruits_list) # Convert back to tuple print(fruits) # Output: ('Apple', 'Orange', 'Plum', 'Banana', 'Guava')
Concatenating Tuples in Python
You can join two tuples using the +
operator.
For example:
fruits1 = ("Apple", "Orange", "Plum") fruits2 = ("Banana", "Grapes") fruits = fruits1+ fruits2 print(fruits)
Output:
('Apple', 'Orange', 'Plum', 'Banana', 'Grapes')
Tuple Methods
Tuple has the following built-in methods:
count()
This method returns the number of times an element appears in a tuple.
Syntax:
tuple.count(element)
For example:
tuple1 = (1, 57, 3, 6, 18, 3, 3) count_3 = tuple1.count(3) print(count_3) # Output: 3
index()
This method returns the first occurrence of the given element from the tuple.
Note: This method raises a ValueError
if the element is not found in the tuple.
For example:
tuple1 = (1, 57, 3, 6, 18, 54, 3) numberIndex = tuple1.index(3) print('Index of 3 in tuple1 is:', numberIndex) # Output: Index of 3 in tuple1 is: 2
You can specify a start index for the search. For example:
tuple1 = (1, 57, 13, 6, 18, 54, 13) numberIndex = tuple1.index(13, 3) # Start search at index 3 print(numberIndex) # Output: 6
Thatโs all for today!
If youโre new to web development, check out Learnify โ my curated platform with beginner-friendly tutorials to help you learn web development step-by-step with examples and simple explanations.
If you enjoy my work and want to support what I do:
๐ Become a Patreon supporter
๐ Or buy me a coffeeEvery small gesture keeps me going! ๐
Follow me on X (Twitter) to get daily web development tips & insights.
Enjoyed reading? You may also find these articles helpful.
Everything You Need to Know About Python Lists
Python Sets : A Comprehensive Guide