Python Tuple

By | June 9, 2019

In this tutorial, we are going to discuss Python tuples. Tuples are most likely python list so it’s very important to have knowledge of list before you learn python tuples. Here in this article, we will learn all about python tuples and all methods & logics associated with it.

Table of Content:

  • Tuple
  • Creating Tuple
  • Indexing in tuple
  • Changing a Tuple
  • Deleting a Tuple object
  • Tuple Methods
  • Advantage of tuple

A tuple is a data type present in python which acts and mostly look like a python list. Unlike a list, we use parenthesis () to store tuple items. Tuples are immutable in nature which means once items have assigned to a tuple cannot be altered.

As we have mentioned that list and tuples can perform the same task, like a list we can store different data types in a tuple.

Let’s understand it with an example:

>>> tup = (20,"Hello","world",19,True)
>>> print(tup)
>>> print(type(tup))

#output

 (20, 'Hello', 'world', 19, True)
<class 'tuple'>

Tuple inside a tuple

tup = (2019, "Jan", ("hello", "world") , "Monday" )
print(tup)

#Output

(2019, 'Jan', ('hello', 'world'), 'Monday')

Indexing in a tuple:

Like a list, in tuple, we also use indexing to access the specific item present inside it. As we know that by convention indexing start from 0 and 0 index represent the 1st item of the tuple.

3 type of indexing we can perform on tuples:

1 Positive indexing

In positive indexing, we use the positive integers (start from 0 to n-1 integers for n items in the tuple) to retrieve the specific item from a tuple.

Let’s understand it with an example:

tup = ("a","b","c","d","e","f",("g","h"),"i")
print(tup[0])
print(tup[3])
print(tup[5])
print(tup[6])
print(tup[6][0])                 #tuple inside a tuple

#Output

a
d
f
('g', 'h')
g

2 Negative indexing:

In negative we pass negative integer in [ ]  sq. box to retrieve the specific item from a tuple. Here 0 also represent the 1st item of the tuple but the -1 represent the last item of tuple. Negative indexing comes in use when we want to retrieve items from the back of tuple.

Let’s understand it with an example:

tup = ("a","b","c","d","e","f")
print(tup[0])
print(tup[-2])
print(tup[-5])

#Output

a
e
b

3 Slicing:

By using the slicing index, we can access a sequence of a tuple.

Syntax of using a slicing index.

tup[start point : end point : steps]

let’s understand it with an example:

tup = ("a","b","c","d","e","f",("g","h"),"i")
print(tup[0:3])
print(tup[3:-1:])
print(tup[6][0:-1])

#Output

('a', 'b', 'c')
('d', 'e', 'f', ('g', 'h'))
('g', 'h')

Changing a tuple:

Tuples are immutable that means once we have an assigned a value to a tuple, we cannot change it.

Let’s understand it with an example:

tup = ("a","b","c","d","e","f",("g","h"),"i")
tup [3] = "k"

#Output

TypeError: 'tuple' object does not support item assignment

But we can change a mutable item if it presents in a tuple though we can not change all the mutable item for once.

Let’s understand it with an example

tup = ("a","b","c","d","e","f",["g","h"])
tup [6] = "k"

#Output

TypeError: 'tuple' object does not support item assignment
tup = ("a","b","c","d","e","f",["g","h"])
tup [6][0] = "k"
print(tup)

#Output

('a', 'b', 'c', 'd', 'e', 'f', ['k', 'h'])

Deleting a tuple:

We can use del keyword to delete the tuple object

Example

tup = ("a","b","c","d","e","f",["g","h"])
del tup
print(tup)

#Output

NameError: name 'tup' is not defined

Convert a list to a tuple:

We can convert a list into a tuple using tuple keyword.

Example:

lis = ["a","b","c","d","e","f",["g","h"]]
print(type (lis))
tup =tuple(lis)
print(type(tup))

#Output

<class 'list'>
<class 'tuple'>

Tuple methods:

Unlike list tuple does not many methods, tuple only has two methods.

  • count(a): It uses to count the number of items a present in tuple
  • index(x): it return the index value of x item

example:

tup =(1,2,3,3,4,5,5,5,6,5,4,3,5)
print(tup.count(5))
print(tup.index(3))

#Output

5
2

Advantages of Tuple over List:

  • Conventionally we use the list for heterogeneous data types and tuple for homogenous data type
  • Tuples are faster than list
  • Tuples can be used as a key of a dictionary
  • Data items of a tuple cannot be manipulated

Python Tutorials


Introduction

Flow Control

Functions

Datatypes

File Handling

Object & Class

Additional Tutorials

Leave a Reply

Your email address will not be published. Required fields are marked *