Tuples

Tuples

A tuple in Python is very similar to lists except for one major difference, the items inside are unchangeable, in other words immutable. What this means in practice is that once defined, the list cannot be modified.

Creating a Tuple

Creating a tuple is very similar to creating a list:

	
    fruits = ("apples", "bananas", "grapes")
    print(fruits)
	
	
    ('apples', 'bananas', 'grapes')
	

While lists are defined using brackets, tuples use parenthesis.

Accessing items in a Tuple

You can access an item in a tuple in the same way you do with lists:

	
    fruits = ("apples", "bananas", "grapes")
    print(fruits[1])
	
	
    bananas
	

You can also use negative indexes:

	
    fruits = ("apples", "bananas", "grapes")
    print(fruits[-1])
	
	
    grapes
	

Looping through a Tuple

Here is how to iterate through a tuple:

	
    fruits = ("apples", "bananas", "grapes")

    for fruit in fruits:
        print(fruit)
	
	
    apples
    bananas
    grapes
	

Check if Item Exists in Tuple

You can check if an item exists in a tuple like this:

	
    fruits = ("apples", "bananas", "grapes")

    print("apples" in fruits)
    print("strawberries" in fruits)
	
	
    True
    False
	

Tuple Length

Get the length of a tuple using the built-in len function:

	
    fruits = ("apples", "bananas", "grapes")

    print(len(fruits))
	
	
    3
	

Combine Multiple Tuples

Even though tuples are immutable, you can still combine them to create a third entirely new tuple. This is how:

	
    fruits = ("apples", "bananas", "grapes")
    vegetables = ("carrots", "peas", "lettuce")

    food = fruits + vegetables

    print(food)
	
	
    ('apples', 'bananas', 'grapes', 'carrots', 'peas', 'lettuce')
	

Converting a Tuple into a List

When the sitution arises that you indeed must make changes to the tuple, Python gives you the option to convert it to a list instead. Use the list() function to do just that:

	
    fruits = ("apples", "bananas", "grapes")

    fruits_list = list(fruits)

    print(fruits_list)
	
	
    ['apples', 'bananas', 'grapes']