Python: What is a tuple?

adamlombard profile image Adam Lombard ・1 min read

In Python, tuples are immutable data sequences. They are typically used to group related but heterogeneous values.

Say we have several pieces of information—in a variety of data types—that together describe a single work of art:

artist = "Louise Nevelson"
title = "Sky Gate, New York"
media = ["wood", "oil paint"]
completed = 1978

It may be convenient to group these values together. Since the description of an artwork should never change during our program, an immutable tuple suits our needs perfectly:

artwork = (artist, title, media, completed)

Elements in a tuple can be accessed by index:

>>> artwork[0]
'Louise Nevelson'

But, since tuples are immutable, we cannot change elements by index:

>>> art_work[0] = "Ruth Asawa"
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

For more information on tuples, see the Python docs.

Learn more about Louise Nevelson and Ruth Asawa.


Editor guide
bezirganyan profile image
Grigor Bezirganyan

Also, One more interesting usage of tuples is that you can use them as a key for dictionaries. (Dictionaries only accept immutable data types as key)

d = {}
d[(obj1, obj2, obj3)] = value
miniscruff profile image

I highly recommend using named tuples when grouping.