Blog_Banner_Asset
    Homebreadcumb forward arrow iconBlogbreadcumb forward arrow iconData Sciencebreadcumb forward arrow iconLearn About Python Tuples Function [With Examples]

Learn About Python Tuples Function [With Examples]

Last updated:
20th Mar, 2020
Views
Read Time
6 Mins
share image icon
In this article
Chevron in toc
View All
Learn About Python Tuples Function [With Examples]

Tuples are sequences or a collection of objects separated by commas. They are similar to lists in many ways, except that the elements cannot be changed after they are created. And unlike lists, tuples in Python are immutable objects. Also, they use parentheses and not square brackets. 

Creating a tuple is as simple as placing values separated by commas, sometimes between parentheses. Here are some examples:

  • tup1 = ( ‘English’, ‘Hindi’, 1998, 2016)
  • tup2 = “c”, “d”, “e”, “f”
  • tup3 = (5, 6, 7, 8, 9)

As you can see, a tuple may have any number of elements, and they may be of different types – an integer, a list, a string, and so on. Using parentheses is optional, but considered a good practice to follow. Now, let us delve into the specifics. 

If you are a beginner and interested to learn more about data science, check out our data science certification from top universities.

Read about: Operators in Python

Tuples in Python

1. Creating a tuple

An empty tuple comprises two parentheses with nothing inside, i.e., (). Here’s how you create it:

empty _tup = ()

print (empty_tup)

#Output

()

Now, let’s see how we can create non-empty tuples. Creating tuples without parentheses is called tuple packing. 

tup=‘mouse’, ‘keyboard’

print(tup)

#Output

(‘mouse’, ‘keyboard’)

 

Alternatively, you can use parentheses for the same output. 

tup= (‘mouse’, ‘keyboard’)

print(tup)

#Output

(‘mouse’, keyboard’)

For a single-element tuple, merely putting the one constituent within parentheses would not work. You will have to include a trailing comma to indicate that it is a tuple. Consider the following example. 

tup=(50,)

2. Concatenation, Nesting, and Repetition

To concatenate two tuples in python, you can write the following code:

my_tup=(0,1,2,3,4,5)

your_tup=(‘hello’, ‘bye’)

print(my_tup + your_tup)

#Output

(0,1,2,3,4,5, ‘hello’, ‘bye’)

Below is the code for creating nested tuples:

tup1=(0,1,2)

tup2=(‘python’, ‘learn’)

tup3=(tup1, tup2)

print(tup3)

#Output

((0,1,2),(‘python’,’learn’))

To create a tuple with repetition, follow the steps given below:

new_tup=(‘hi’,)*4

print(new_tup)

#Output 

(‘hi’, ‘hi’, ‘hi’, ‘hi’)

On writing the above code without commas, you will get a string, hihihihi, as output for new_tup.

Read: Top 5 Python Modules

3. Accessing Tuples

To access values in tuple, you use square brackets with the index. Take the code below to test slicing. 

tuple=(0,1,2,3)

print(tuple[1:])

print(tuple[::-1])

print(tuple[2:4])

#Output

(1,2,3)

(3,2,1,0)

(2,3)

4. Dealing with immutability 

It is not possible to update or change the values of elements, but you can create new tuples by taking portions of existing tuples, as demonstrated in the example below.

tuple1=(‘ab’, ‘xy’)

tuple2=(13,14)

#action invalid for tuples

#tuple1[0]=50

#Creating a new tuple

tuple3=tuple1+tuple2

print tuple3

#Output

(‘ab’, ‘xy’, 13, 14)

Similarly, you cannot remove individual elements in tuples since they are immutable. However, you can put together another tuple to discard the undesired constituents. And you can remove the entire tuple by using the del statement explicitly.

tuple1=(‘January’, February’)

del tuple1

Also read: Python Developer Salary in India

upGrad’s Exclusive Data Science Webinar for you –

ODE Thought Leadership Presentation

Explore our Popular Data Science Courses

Basic Tuple Operations 

There are various built-in tuple functions in python, such as len(), cmp(), max(), min(), and tuple(seq). Let us demonstrate their use one by one.

  • Finding length of a tuple

my_tuple = (‘upgrad’, ‘python’)

print(len(my_tuple))

#Output

2

  • Comparing elements

tup1 = (‘upgrad’,’python’)

tup2 = (‘coder’, 1)

if (cmp(tup1, tup2) != 0):

     # cmp() returns 0 if matched, 1 when not tup1 

    # is longer and -1 when tup1 is shorter

    print(‘Not the same’)

else:

    print(‘Same’)

#Output

Not the same 

  • Maximum and minimum values

print (‘Maximum element in tuples 1,2: ‘ + str(max(tup1)) + ‘,’ + str(max(tup2)))

print (‘Minimum element in tuples 1,2: ‘ + str(min(tup1)) + ‘,’ + str(min(tup2)))

#Output

Maximum element in tuples 1,2: upgrad,coder

Minimum element in tuples 1,2: python,1

You will observe that the max() and min() checks are based on ASCII values. In case of two strings in a tuple, python checks the first different characters in the strings.

  • Converting lists and strings into tuples

list1 = [0, 1, 2,3]

print(tuple(list1))

print(tuple(‘upgrad’)) # string ‘upgrad’

#Output

(0,1,2,3)

(‘u’, ‘p’, ‘g’, ‘r’, ‘a’, ‘d’)

Here, a single parameter, such as a list, string, set, dictionary key, is taken and converted into a tuple.

Top Data Science Skills to Learn

How to create a tuple in a loop

Now, let’s move on to creating tuples in a loop. You can follow the following python code to do it. 

tuple=(’python’,)

n=3 #Number of time the loop runs

or i in range (int(n)):

 tuple=(tuple,)

 Print tuple

#Output

((‘python’,),)

(((‘python’,),),)

((((‘python’,),),),)

As you can see, there are different ways of creating a tuple and iterating over it.

Advantages over lists

Lists and tuples in Python are typically used in similar situations. But tuples are preferred over lists due to a variety of reasons. Some of them are listed below.

  • Tuples are used for heterogeneous types of data. On the other hand, lists are more suitable for homogenous data types.
  • Tuples offer a performance boost as iterating through them is faster as compared to lists. This is attributable to their immutable nature.
  • You can go for tuple implementation to keep your data write-protected.
  • Immutable elements can be used as a dictionary key.

Conclusion

In this article, we understood all about tuples in Python, from what they are and how to create them to their different operations and benefits. This information will surely come handy as you move forward in your Python learning journey! 

If you are reading this article, most likely you have ambitions towards becoming a Python developer. If you’re interested to learn python & want to get your hands dirty on various tools and libraries, check out Executive PG Programme in Data Science.

Profile

Rohit Sharma

Blog Author
Rohit Sharma is the Program Director for the UpGrad-IIIT Bangalore, PG Diploma Data Analytics Program.

Frequently Asked Questions (FAQs)

1What are the characteristics of tuples in Python?

In Python, a tuple is an ordered collection of objects that cannot be changed. Here, the objects in Python could be anything like integers, tuples, lists, strings, etc. The insertion order is preserved as the display of output will be dependent upon the order in which elements are inserted. Tuples are immutable, and you cannot modify the objects once they are added to the tuple. Tuples can store both the same as well as different types of objects. Indexing plays a major role in tuples. You can store duplicates in tuples. You can use both positive and negative indexes in tuples, where positive index refers to forward direction and negative index refers to backward direction. You need to use a comma as a separator for separating objects in a tuple.

2Are there built-in methods in tuples?

Yes, there are two built-in methods available for use in tuples. Tuples are immutable, and you are not allowed to change the objects in a tuple after adding them. A tuple object can call the two available built-in methods, which are count() and index(). count() will return the number of times any specific value occurs in the entire tuple. index() will search the entire tuple for the specified value and also return the position where that value had been found.

3Why are tuples faster than lists in Python?

There are mutable and immutable objects in Python, where lists come under mutable ones, and tuples come under immutable ones. Tuples are stored in a single block of memory, and there is no requirement for extra space for storing new objects.

On the other hand, lists are allocated in two blocks, where one block stores the object information and the other block has a variable size for adding new data. This is the main reason behind tuples being faster than lists in Python. This is another reason why indexing is faster in tuples as compared to lists.

Explore Free Courses

Suggested Blogs

Most Common PySpark Interview Questions & Answers [For Freshers & Experienced]
20603
Attending a PySpark interview and wondering what are all the questions and discussions you will go through? Before attending a PySpark interview, it’s
Read More

by Rohit Sharma

05 Mar 2024

Data Science for Beginners: A Comprehensive Guide
5036
Data science is an important part of many industries today. Having worked as a data scientist for several years, I have witnessed the massive amounts
Read More

by Harish K

28 Feb 2024

6 Best Data Science Institutes in 2024 (Detailed Guide)
5113
Data science training is one of the most hyped skills in today’s world. Based on my experience as a data scientist, it’s evident that we are in
Read More

by Harish K

28 Feb 2024

Data Science Course Fees: The Roadmap to Your Analytics Career
5055
A data science course syllabus covers several basic and advanced concepts of statistics, data analytics, machine learning, and programming languages.
Read More

by Harish K

28 Feb 2024

Inheritance in Python | Python Inheritance [With Example]
17380
Python is one of the most popular programming languages. Despite a transition full of ups and downs from the Python 2 version to Python 3, the Object-
Read More

by Rohan Vats

27 Feb 2024

Data Mining Architecture: Components, Types & Techniques
10660
Introduction Data mining is the process in which information that was previously unknown, which could be potentially very useful, is extracted from a
Read More

by Rohit Sharma

27 Feb 2024

6 Phases of Data Analytics Lifecycle Every Data Analyst Should Know About
79963
What is a Data Analytics Lifecycle? Data is crucial in today’s digital world. As it gets created, consumed, tested, processed, and reused, data goes
Read More

by Rohit Sharma

19 Feb 2024

Sorting in Data Structure: Categories & Types [With Examples]
138282
The arrangement of data in a preferred order is called sorting in the data structure. By sorting data, it is easier to search through it quickly and e
Read More

by Rohit Sharma

19 Feb 2024

Data Science Vs Data Analytics: Difference Between Data Science and Data Analytics
68394
Summary: In this article, you will learn, Difference between Data Science and Data Analytics Job roles Skills Career perspectives Which one is right
Read More

by Rohit Sharma

19 Feb 2024

Schedule 1:1 free counsellingTalk to Career Expert
icon
footer sticky close icon