Skip to main content
HomeAbout PythonLearn Python

Tuples in Python Tutorial

Learn to use and unpack Tuples in Python.
Jun 2020  · 3 min read

Tuples are made of several items, just like a list, but they cannot be modified in any way. They are widely used internally in many of the systems we depend on, like databases. Tuples hold data in the order we supply it, and we can access the elements inside a tuple with an index.

For example, if you have a tuple like ('chocolate chip cookies', 15) and you want to access each part of the data, you can use an index just like a list. Tuples are easier to process and more memory efficient than lists.

They are immutable, which means we cannot add or remove elements from them. This property of tuple is important because we can use them to ensure that our data is not altered. We can create tuples by pairing up elements.


Often, we will have lists where we want to match up elements into pairs, and the zip function enables us to do that. Tuples are commonly created by zipping lists together with zip().


Here we have a list of most popular cookies in the US and India, and we want to build a list of pairs by the popularity rank of the cookie in each country, and we will pass them to the zip function. Then we print the result of the zip, and you get what looks like a list of Tuples.

We have two lists: us_cookies, in_cookies.


Notice that the tuples use parenthesis as their object representation.


Tuple unpacking, also sometimes called tuple expansion, allows us to assign the elements of a tuple to named variables for later use. Unpacking tuples is a very expressive way of working with data.


The below syntax allows you to create a more readable and less error-prone code. Here we have a tuple containing top-ranked cookie from two countries, and we want to store them as us_num_1 and in_num_1 so that we can print them name by name.

We start by putting both variables as the target of the assignment statement separated by a comma. Then assign the first tuple in our top_pairs list to them.



Here we build a for loop that uses tuple unpacking when iterating over the top_pairs list. It splits each tuple in the list into its Indian and US cookie elements. We then use each of these variables to print the cookies in order.


Enumerating Positions

Another useful tuple creation method is the enumerate() function. Enumeration is used in loops to return the position and the data in that position while looping.


Here we enumerate our top pairs list and split that resulting tuple into index idx and item.


To learn more about tuples in Python, please see this video from our course Data Types for Data Science in Python.

This content is taken from DataCamp’s Data Types for Data Science in Python course by Jason Myers.

Check out our Python Data Structures Tutorial.

Python courses

Introduction to Python

4 hr
Master the basics of data analysis with Python in just four hours. This online course will introduce the Python interface and explore popular packages.
See DetailsRight Arrow
Start Course
See MoreRight Arrow

Pandas 2.0: What’s New and Top Tips

Dive into pandas 2.0, the latest update of the essential data analysis library, with new features like PyArrow integration, nullable data types, and non-nanosecond datetime resolution for better performance and efficiency.
Moez Ali's photo

Moez Ali

9 min

PyTorch 2.0 is Here: Everything We Know

Explore the latest release of PyTorch, which is faster, more Pythonic, and more dynamic.
Abid Ali Awan's photo

Abid Ali Awan

6 min

An Introduction to Python T-Tests

Learn how to perform t-tests in Python with this tutorial. Understand the different types of t-tests - one-sample test, two-sample test, paired t-test, and Welch’s test, and when to use them.
Vidhi Chugh's photo

Vidhi Chugh

13 min

Matplotlib time series line plot

This tutorial explores how to create and customize time series line plots in matplotlib.
Elena Kosourova's photo

Elena Kosourova

8 min

Step-by-Step Guide to Making Map in Python using Plotly Library

Make your data stand out with stunning maps created with Plotly in Python
Moez Ali's photo

Moez Ali

7 min

High Performance Data Manipulation in Python: pandas 2.0 vs. polars

Discover the main differences between Python’s pandas and polars libraries for data science
Javier Canales Luna's photo

Javier Canales Luna

16 min

See MoreSee More