Python program to get first and last elements from a tuple

Tuples are an important data type in Python that store multiple elements in a fixed order. In this article, we'll learn different methods to access the first and last elements from a tuple efficiently.

What is a Tuple in Python?

A tuple is an ordered collection of items that is immutable (unchangeable). Tuples are defined using round brackets and can store elements of different data types.

Example

fruits = ("apple", "banana", "cherry")
print(fruits)
print(type(fruits))
('apple', 'banana', 'cherry')
<class 'tuple'>

Method 1: Using Index Notation

The most straightforward way to access first and last elements is using index notation. Python uses zero-based indexing, so the first element is at index [0] and the last element is at index [-1].

Getting the First Element

data = ("Dehradun", 4, 29, 13)
first_element = data[0]
print("First element:", first_element)
First element: Dehradun

Getting the Last Element

data = ("Dehradun", 4, 29, 13)
last_element = data[-1]
print("Last element:", last_element)
Last element: 13

Getting Both Elements

data = ("Dehradun", 4, 29, 13)
first = data[0]
last = data[-1]
print(f"First: {first}, Last: {last}")
First: Dehradun, Last: 13

Method 2: Using Tuple Unpacking

Python's tuple unpacking allows you to extract multiple elements in a single line. Use the asterisk (*) operator to ignore middle elements.

data = ("apple", "banana", "cherry", "date", "elderberry")
first, *middle, last = data
print("First:", first)
print("Last:", last)
print("Middle:", middle)
First: apple
Last: elderberry
Middle: ['banana', 'cherry', 'date']

Method 3: Using Built-in Functions

For specific scenarios, you can use built-in functions to access elements.

numbers = (10, 20, 30, 40, 50)

# Using next() and iter() for first element
first = next(iter(numbers))
print("First using next():", first)

# Using len() to calculate last index
last_index = len(numbers) - 1
last = numbers[last_index]
print("Last using len():", last)
First using next(): 10
Last using len(): 50

Handling Edge Cases

When working with tuples, consider edge cases like empty tuples or single-element tuples.

# Empty tuple
empty_tuple = ()
print("Empty tuple length:", len(empty_tuple))

# Single element tuple
single_tuple = (42,)
if len(single_tuple) > 0:
    print("Single element (first and last):", single_tuple[0])

# Check before accessing
def get_first_last(t):
    if len(t) == 0:
        return None, None
    elif len(t) == 1:
        return t[0], t[0]
    else:
        return t[0], t[-1]

result = get_first_last((1, 2, 3, 4, 5))
print("First and Last:", result)
Empty tuple length: 0
Single element (first and last): 42
First and Last: (1, 5)

Comparison of Methods

Method Syntax Best For
Index notation tuple[0], tuple[-1] Simple, direct access
Tuple unpacking first, *_, last = tuple Multiple assignments
Built-in functions next(iter(tuple)) Functional programming style

Conclusion

The most efficient way to get first and last elements from a tuple is using index notation with [0] and [-1]. Tuple unpacking is useful when you need to assign multiple variables simultaneously.

Updated on: 2026-03-27T00:17:46+05:30

33K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements