Tuple

A tuple is a finite ordered list of elements. Tuples are written by listing comma-separated elements within parentheses. Similar to lists, they are sequences. The main difference between tuples and lists is that tuples cannot be changed once assigned, whereas lists can. Tuples are occasionally written with square or angle brackets.

Most typed functional programming languages such as Lisp, Python, and Linda use tuples as product types. Uses for the tuple as a data type include passing a string of parameters from one program to another and representing a set of value attributes in a relational database. In some languages, tuples are embedded within other tuples within parentheses or brackets.

Some programming languages offer an alternative to tuples known as record types, which feature unordered elements accessed by label. Languages such as Haskell combine tuple product types and unordered record types into a single construct.

Python tuple

In Python, lists and tuples are two of the most commonly used data structures. In addition to the aforementioned difference of being changeable, other differences include:

  • Iterating over elements of a tuple is faster compared to iterating over a list.
  • In Python, elements of a tuple are enclosed in parentheses whereas elements of list are enclosed in square brackets.
  • If data needs to remain unchanged over time, a tuple is the preferred data type. If data may need to be changed in the future, a list should be used.

Python tuple example

A tuple can have any number of items that are of different types such as integer, float, and string. Here’s an example of a tuple in Python:

Program to run in Python:

# Different types of tuples

# Empty tuple
my_tuple = ()
print(my_tuple)

# Tuple having integers
my_tuple = (1, 2, 3)
print(my_tuple)

# tuple with mixed datatypes
my_tuple = (1, "Hello", 3.4)
print(my_tuple)

# nested tuple
my_tuple = ("mouse", [8, 4, 6], (1, 2, 3))
print(my_tuple)

Output:

()
(1, 2, 3)
(1, 'Hello', 3.4)
('mouse', [8, 4, 6], (1, 2, 3))

Webopedia Staff
Webopedia Staff
Since 1995, more than 100 tech experts and researchers have kept Webopedia’s definitions, articles, and study guides up to date. For more information on current editorial staff, please visit our About page.

Related Articles

Change Order

When changes need to be made to a project after the project has already been approved by the client, a professional service firm needs...

Container Registry Software

Container registry software is designed to store container images while inactive and offers automation features for container management. The software also provides a level...

Systems Integrator (SI)

With the increasing complexity of IT, businesses want complete IT solutions that include the right software, networking, and hardware components. They also want those...

Early Adopter

Early adopters play an integral role in the shift from untested to critical technology—they're the first buyers to invest in new hardware, software, or...

Change Order

When changes need to be made to a project after the project has...

Container Registry Software

Container registry software is designed to store container images while inactive and offers...

Accenture

Accenture is a global professional services company that specializes in information technology (IT)...