range() and xrange() take a third parameter that specifies a step. So you can do the following.

range(10, 0, -1)

Which gives

[10, 9, 8, 7, 6, 5, 4, 3, 2, 1] 

But for iteration, you should really be using xrange instead. So,

xrange(10, 0, -1)

Note for Python 3 users: There are no separate range and xrange functions in Python 3, there is just range, which follows the design of Python 2's xrange.

Answer from Chinmay Kanchi on Stack Overflow
🌐
Python Morsels
pythonmorsels.com › looping-in-reverse
Looping in reverse - Python Morsels
May 27, 2025 - To loop in the reverse direction, you can use Python's built-in reversed function: >>> colors = ["purple", "blue", "green", "pink", "red"] >>> for color in reversed(colors): ... print("I like", color) ...
🌐
Reddit
reddit.com › r/learnprogramming › differences in iteration through a loop in reverse order - python
r/learnprogramming on Reddit: Differences in iteration through a loop in reverse order - Python
August 5, 2021 -

So I'm building a game that requires me to loop through a list in reverse order.

It seems that there are multiple ways to do this same task, but I want to make sure I understand the differences between the alternative ways.

From what I have found online:

I can use list comprehension -

for _ in desired_list[::-1]

I can use reversed() -

for _ in revered(desired_list)

I can use a range() -

for _ in range(len(desired_list) -1, 0, -1)

Is there any functional difference between these?

Also for the range iteration, could you verify what each number stands for?

It seems to be:

range("number to start on", "number to end up", "direction and distance to travel in list")

Is that correct?

Thank you for any help!

🌐
YouTube
youtube.com › watch
Using reversed to loop in reverse in Python - YouTube
Any reversible iterable can be reversed using the built-in "reversed" function whereas Python's slicing syntax only works on sequences.Article at https://pym...
Published   May 30, 2025
🌐
Codecademy
codecademy.com › article › how-to-reverse-a-list-in-python
How to Reverse a List in Python | Codecademy
In the first approach, reversed() is used with list() to create a new reversed list. In the second approach, reversed() is used directly in a for loop to iterate through elements in reverse order without creating a new list.
🌐
Geek Python
geekpython.in › reverse-vs-reversed-in-python
Reverse Vs Reversed Function In Python - Comparison
January 17, 2024 - The reverse() function from Python List is used to reverse the elements in a List wjereas, Python reversed() function takes a sequence and returns the reversed iterator object.
🌐
Real Python
realpython.com › python-reverse-list
Reverse Python Lists: Beyond .reverse() and reversed() – Real Python
June 28, 2023 - Sometimes you need to process Python lists starting from the last element down to the first—in other words, in reverse order. In general, there are two main challenges related to working with lists in reverse: ... To meet the first challenge, you can use either .reverse() or a loop that swaps items by index. For the second, you can use reversed() or a slicing operation.
Find elsewhere
🌐
GeeksforGeeks
geeksforgeeks.org › python › backward-iteration-in-python
Backward iteration in Python - GeeksforGeeks
July 11, 2025 - Python provides various methods ... like reversed(). Use reversed() method when we simply need to loop backwards without modifying original sequence or there is no need to create a new reversed copy....
🌐
Spark By {Examples}
sparkbyexamples.com › home › python › python for loop in backwards
Python For Loop in Backwards - Spark By {Examples}
May 31, 2024 - How to print Python for loop in backwards? you can use reversed() functions to implement the loop from backward direction. Usually, Python for loop is
🌐
Stack Abuse
stackabuse.com › bytes › traversing-a-list-in-reverse-order-in-python
Traversing a List in Reverse Order in Python
August 30, 2023 - The reversed() function and list slicing are Pythonic methods that are simple and readable, while a for loop with range() gives you more control over the iteration.
🌐
Real Python
realpython.com › ref › builtin-functions › reversed
reversed() | Python’s Built-in Functions – Real Python
In your class, .__iter__() provides support for normal iteration, and .__reversed__() supports reverse iteration. ... In this step-by-step tutorial, you'll learn about Python's tools and techniques to work with lists in reverse order.
🌐
Reddit
reddit.com › r/pythontips › [video] python's reverse() vs reversed() - how they differ
r/pythontips on Reddit: [Video] Python's reverse() Vs reversed() - How they differ
January 16, 2024 - On the flip side, reversed() is a function that returns a reversed iterator, allowing you to create a reversed version without altering the original list.
🌐
GeeksforGeeks
geeksforgeeks.org › python › python-reversed-function
Python reversed() Method - GeeksforGeeks
February 17, 2026 - Example 2: Here, reversed() is used inside a for loop to print characters of a string in reverse.
🌐
DEV Community
dev.to › sachingeek › what-is-the-difference-between-reverse-and-reversed-in-python-54ik
What is the Difference Between Reverse and Reversed in Python - DEV Community
September 9, 2023 - We cannot use the reverse function on the string data type or any other data type. The reverse() function can only be used for the list data type. Python reversed() function takes a sequence and returns the reversed iterator object.