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

Python Free Online Course with Certification [2023]
116083
Summary: In this Article, you will learn about python free online course with certification. Programming with Python: Introduction for Beginners Lea
Read More

by Rohit Sharma

20 Sep 2023

Information Retrieval System Explained: Types, Comparison & Components
47707
An information retrieval (IR) system is a set of algorithms that facilitate the relevance of displayed documents to searched queries. In simple words,
Read More

by Rohit Sharma

19 Sep 2023

26 Must Read Shell Scripting Interview Questions & Answers [For Freshers & Experienced]
12973
For those of you who use any of the major operating systems regularly, you will be interacting with one of the two most critical components of an oper
Read More

by Rohit Sharma

17 Sep 2023

4 Types of Data: Nominal, Ordinal, Discrete, Continuous
284370
Summary: In this Article, you will learn about 4 Types of Data Qualitative Data Type Nominal Ordinal Quantitative Data Type Discrete Continuous R
Read More

by Rohit Sharma

14 Sep 2023

Data Science Course Eligibility Criteria: Syllabus, Skills & Subjects
42474
Summary: In this article, you will learn in detail about Course Eligibility Demand Who is Eligible? Curriculum Subjects & Skills The Science Beh
Read More

by Rohit Sharma

14 Sep 2023

Data Scientist Salary in India in 2023 [For Freshers & Experienced]
901009
Summary: In this article, you will learn about Data Scientist salaries in India based on Location, Skills, Experience, country and more. Read the com
Read More

by Rohit Sharma

12 Sep 2023

16 Data Mining Projects Ideas & Topics For Beginners [2023]
48919
Introduction A career in Data Science necessitates hands-on experience, and what better way to obtain it than by working on real-world data mining pr
Read More

by Rohit Sharma

12 Sep 2023

Actuary Salary in India in 2023 – Skill and Experience Required
899330
Do you have a passion for numbers? Are you interested in a career in mathematics and statistics? If your answer was yes to these questions, then becom
Read More

by Rohan Vats

12 Sep 2023

Most Frequently Asked NumPy Interview Questions and Answers [For Freshers]
24495
If you are looking to have a glorious career in the technological sphere, you already know that a qualification in NumPy is one of the most sought-aft
Read More

by Rohit Sharma

12 Sep 2023

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