×

Python Tutorial

Python Basics

Python I/O

Python Operators

Python Conditions & Controls

Python Functions

Python Strings

Python Modules

Python Lists

Python OOPs

Python Arrays

Python Dictionary

Python Sets

Python Tuples

Python Exception Handling

Python NumPy

Python Pandas

Python File Handling

Python WebSocket

Python GUI Programming

Python Image Processing

Python Miscellaneous

Python Practice

Python Programs

Iterate / traverse a list in reverse order in Python

Traverse a Python list in reverse order: In this tutorial, we will learn how to iterate/traverse a given Python list in reverse order using multiple approaches and examples. By IncludeHelp Last updated : June 22, 2023

Given a Python list, we have to traverse it in reverse order using multiple approaches. Consider the below example with sample input and output -

Input:
List = [10, 20, 30, 40, 50]
Output:
list = [50, 40, 30, 20, 10]

Input:
list = ['Hello', 10 'World', 20]
Output:
list = [20, 'World', 10, 'Hello']

Traverse a Python list in reverse order

There can be multiple approaches to traverse a Python list in reverse order. Some of the approaches are as follows:

Let's discuss each approach in details:

1. Using list slicing

The easiest and simplest approach for traversing a Python list is that - You can use list slicing. Use negative indexing i.e., ::-1. The statement list[::-1] will return the list in reverse order.

Example

# Traverse a Python list in reverse order
# Using list slicing

# Define a list
list1 = [10, 20, 30, 40, 50]

# Print the list
print("Original list: ", list1)

# Reverse the list
newlist = list1[::-1]

# print the list
print("List in reverse order: ", newlist)

# another list with string and integer elements
list2 = ["Hello", 10, "world", 20]

# print the list
print("Original list: ", list2)

# Reverse the list
newlist = list2[::-1]

# print the list
print("List in reverse order: ", newlist)

Output

Original list:  [10, 20, 30, 40, 50]
List in reverse order:  [50, 40, 30, 20, 10]
Original list:  ['Hello', 10, 'world', 20]
List in reverse order:  [20, 'world', 10, 'Hello']

2. Using reversed() method

You can also use reversed() method while iterating over the list elements. It returns a reverse iterator and it does not modify the given list.

Example

# Traverse a Python list in reverse order
# Using reversed() method

# Define a list
list1 = [10, 20, 30, 40, 50]

# Print the list
print("Original list: ", list1)

# Traverse list in reverse order
print("List in reverse order:")
for item in reversed(list1):
    print(item)

Output

Original list:  [10, 20, 30, 40, 50]
List in reverse order:
50
40
30
20
10

3. Using iterate list elements and insert() method

Another approach is that - Iterate over the list using for ... in loop and insert each element at the 0th index using the list.insert() method. When a new element will be added at the 0th index the previous element will be shifted to the next position. In this way, we will get a reversed list.

Example

# Traverse a Python list in reverse order
# Using iterate list elements and 
# insert() method

# Define a list
list1 = [10, 20, 30, 40, 50]

# Print the list
print("Original list: ", list1)

# Create a new list with elements 
# in reverse order
newlist = [] # an empty list
for item in list1:
    newlist.insert(0, item)

# Print the new list
print("List in reverse order:",newlist)

Output

Original list:  [10, 20, 30, 40, 50]
List in reverse order: [50, 40, 30, 20, 10]

Python List Programs »



Related Programs

Advertisement
Advertisement


Comments and Discussions!

Load comments ↻


Advertisement
Advertisement
Advertisement

Copyright © 2025 www.includehelp.com. All rights reserved.