Python Tuple

Tuples are sequential data types in Python.

A Tuple is an immutable data type in Python i.e. once defined it can not be changed.

Use round brackets"()" to define a Tuple in Python and comma(,) to separate elements.

We can access Tuple elements using the index value of the element.

Like lists, there is both side indexing in Tuples in Python i.e. from the start indexing starts with “0” and from the end, indexing starts with “-1“.

Example

myTuple = (1, 2, 3, 4, "Hello", "World")  # defining a list
print(myTuple)  # printing a list
print(myTuple[0])  # printing first element
print(myTuple[1])  # printing 2nd element
print(myTuple[5])  # printing last element
print(myTuple[-1])  # printing last element
print(myTuple[-2])  # printing last 2nd element

Output

(1, 2, 3, 4, 'Hello', 'World')
1
2
World
World
Hello

One Element Tuple

If we want to declare one element Tuple then we need to put a comma(,) after the element.

Example

myTuple = (1)
myTuple1 = ("1")
myTuple2 = (1,)
print(type(myTuple))
print(type(myTuple1))
print(type(myTuple2))
            

Output

<class 'int'>
<class 'str'>
<class 'tuple'>

Range of Indexes

Like in Lists, we can specify the range of indexes to the tuples to return a part from the tuple.

When specifying a range, the return value will be a new tuple with the specified items excluding the last value.

Example

myTuple = (1, 2, 3, 4, "Hello", "World")  # index starts with 0
print(myTuple[0:3])  # 0 to 3-1=2(excluding last value)
print(myTuple[4:5])
print(myTuple[-6:-1])  # negative indexing similiar to list
print(myTuple[-3:-2])

Output

(1, 2, 3)
('Hello',)
(1, 2, 3, 4, 'Hello')
(4,)

Changing Element Values

It is not possible to change Tuple values after a Tuple is created.

Python will show you an error if we try to change the values.

Example

myTuple = (1, 2, 3, 4, "Hello", "World")
myTuple[0] = 2
print(myTuple)

Output

Traceback (most recent call last):
  File "/tmp/sessions/95fd31eb9f7a5397/main.py", line 2, in <module>
    myTuple[0] = 2
TypeError: 'tuple' object does not support item assignment

Deleting a Tuple

We can delete an entire Tuple using the "del" keyword.

Example

myTuple = (1, 2, 3, 4, "Hello", "World")
del myTuple
print(myTuple)

Output

Traceback (most recent call last):
  File "/tmp/sessions/1dd8fce2f6c4006a/main.py", line 3, in <module>
    print(myTuple)
NameError: name 'myTuple' is not defined

We can delete an entire Tuple but it is not possible to delete one or more elements of a Tuple. Because it will be considered as a change in Tuple which is not possible as Tuples are immutable i.e. can not be changed or modified after their creation.

Example

myTuple = (1, 2, 3, 4, "Hello", "World")
del myTuple[0]

Output

Traceback (most recent call last):
  File "/tmp/sessions/5fa1dff2b174e015/main.py", line 2, in <module>
    del myTuple[0]
TypeError: 'tuple' object doesn't support item deletion

Tuple Length

We can "len()" to know the length of a Tuple.

"len()" function is used to calculate the length of other Python objects as well like "Strings and Lists" .

Example

myString = "I am a String"
myList = ["I", "am", "a", "List"]
myTuple = ("I", "am", "a", "Tuple")
print(len(myString))
print(len(myList))
print(len(myTuple))

Output

13
4
4

Joining Two Tuples

We can add or join two or more tuples using "+" operator.

Example

myTuple1 = (1, 2, 3, 4)
myTuple2 = (5, 6, 7, 8)
myTuple3 = (9, 10, 11, 12)
add1 = myTuple1 + myTuple2
add2 = myTuple1 + myTuple2 + myTuple3
print(add1)
print(add2)

Output

(1, 2, 3, 4, 5, 6, 7, 8)
(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)

Tuple Constructor

We can use "tuple()" constructor to create a Tuple.

Example

myStr = "1234"
myList = [1, 2, 3, 4]
myTuple1 = tuple((myStr))
myTuple2 = tuple((myList))
emptyTuple = tuple()
print(emptyTuple)
print(myTuple1)
print(myTuple2)

Output

()
('1', '2', '3', '4')
(1, 2, 3, 4)

Tuple Methods

There are two built-in methods in Python that we can use on Tuples.

1. count()

It returns the number of times a specific value is found inside a Tuple.

Example

myTuple = (1, 2, 3, 4, 1, 2, 1)
print(myTuple.count(1))

Output

3

2. index()

Searches for the specific value inside a Tuple and returns its index.

Example

myTuple = (1, 2, 3, 4)
print(myTuple.index(2))

Output

1

Also Read:


  • Top 25 Pattern Programs in C++
    In this article, I will show you the Top 25 Pattern Programs in C++ that you must learn which will help you to understand the usage of nested loops. We will learn to create different geometrical shapes like Squares, triangles, Rhombus, etc. We have provided the code as well as output for all the patterns…
  • Currency Converter in C++
    In this article, we will build a simple program for Currency Converter in C++. The user will be able to convert currencies like Dollar, Euro, Pound, and Rupee. This is a console application and very simple to understand as we only use a bunch of conditionals to write the entire program. Features Users can convert…
  • SQLite | CRUD Operations in Python
    CRUD stands for Create Read Update Delete. I will show you how to perform CRUD Operations in Python. You need basic Tkinter and SQLite knowledge before you read further. This app is straightforward, when you will open this app, a GUI with 4 green colored buttons will open to perform CRUD(create read update delete) operations….
  • Number Guessing Game in C++
    In this article, we will build a simple Number Guessing Game in C++. It’s a game in which the player has to guess a secret number in a range that is generated by the computer and upon a wrong guess by the player, the game will give hints to the player to guess the correct…
  • Image background remover in Python
    Hello friends, in this article, we will learn how to create an Image background remover in Python. I will first show you a simple program and then you will see a smile GUI made using tkinter. We need to install rembg, you can install rembg using the pip command: Image background remover in Python program…