Another sequence type, Python provides is Tuple. Unlike Lists, Tuples are immutable; that means, Tuples doesn’t allow to modify the data.
In this article, I am going to explain, how to create & access data from Tuples.
Create a tuple in Python
We can create tuple in Python using comma “,” or parentheses (“()”) or using tuple()
constructor. Each element in tuple is separated by a comma (“,”). We can create an empty tuple with parentheses (“()”) or by calling zero argument constructor, tuple()
.
Below is the example to create a tuple:
>>> tpl = (1, 2, 3, "Apple", 5.0) >>> tpl (1, 2, 3, 'Apple', 5.0) >>>
We can also create a tuple using below statement; parentheses is optional, but it is mandatory while creating an empty tuple, OR we can use tuple()
constructor to create an empty tuple:
>>> tpl = 1, 2, 3, "Apple", 5.0
Accessing tuple elements
Like Lists, we can access the elements in tuple, using its’ positions; the position will start from “0” and the last element position is (number of elements in tuple – 1).
Negative index positions also we can use to access tuple’s elements. Negative index position work from the end of the tuple; starts from “-1” position.
For example, see, below statements to access first element & last element from tuple.
>>> tpl[0] 1 >>> tpl[-1] 5.0 >>>
Another example, we use to access its’ elements using for
statement:
>>> for element in tpl: ... print(element) ... >>>
Tuple within a Tuple
Python allows to add tuples inside the tuples. To access inside tuple’s elements, we need to use multi index; called multi dimensional. For example, below example access inside tuple’s elements:
>>> tpl = tuple((1, 2, 3, "Apple", 5.0, (1.1, 2.2, 3.3, "Banana", 5.5))) >>> tpl (1, 2, 3, 'Apple', 5.0, (1.1, 2.2, 3.3, 'Banana', 5.5)) >>> tpl[0] 1 >>> tpl[-1] (1.1, 2.2, 3.3, 'Banana', 5.5) >>> tpl[-1][0] 1.1 >>> tpl[-1][-1] 5.5 >>>
Notice that when we create a tuple using tuple()
constructor; we must pass the tuple elements inside the parentheses “()”; above, the one marked in blue color. Otherwise, we will get below error message:
>>> tpl = tuple(1, 2, 3, 'Apple', 5.0, (1.1, 2.2, 3.3, 'Banana', 5.5))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: tuple() takes at most 1 argument (6 given)
List within a Tuple
Even, Python allows to include Lists within Tuples. And interestingly, we can access or modify list elements that are inside the tuple; but we can’t modify tuple elements. We can’t modify the list itself with in the tuple; but we can modify list elements. Below example, explains this:
>>> tpl = tuple((1, 2, 3, "Apple", 5.0, [100, 200, 300, "Banana", 7.0])) >>> tpl (1, 2, 3, 'Apple', 5.0, [100, 200, 300, 'Banana', 7.0]) >>> tpl[-1] [100, 200, 300, 'Banana', 7.0] >>> tpl[-1][-1] = 9.0 >>> tpl (1, 2, 3, 'Apple', 5.0, [100, 200, 300, 'Banana', 9.0]) >>>
We will discuss more about Python in upcoming articles.
/Shijit/