Affiliate links on Android Authority may earn us a commission. Learn more.
How to reverse a list in Python
Knowing how to reverse a list in Python is a trick that can come in handy surprisingly often. In this post, we’ll look at a few ways you can do it!
How to reverse a list in Python the easy way
In Python, a list is a variable that stores multiple other variables. This is useful if you ever need to store a list of contacts, a list of options, or anything else in your app. Check out our detailed guide to using lists in Python here:
The good news is that reversing lists in Python is extremely simple. That’s because there just so happens to be a method built-in to Python that will do it for you instantly. And it has a logical name, too: reverse().
Simple take your list then use the method:
listOfNames.reverse()
From this point on, your list will now be reversed!
But what if you don’t want to permanently jumble up your list? In that case, you can retrieve a reversed version of your list very simply too:
reversed(listOfNames)
Now you can say something along the lines of:
listOfNames = ["Bob", "Janine", "Janine", "Bart"]
for n in reversed(listOfNames):
print(n)
How to reverse a list in Python with slicing
Another option for reversing your list is to use slicing. This method is a little less efficient because it creates a new copy of the list, which will take up additional memory.
You use slicing with the following syntax:
print(listOfNames[::-1])
This little trick works in the same way that we’re able to get a range from a list. To print just the middle two elements in a list, for instance, we could say:
print(listOfNames[1:3])
(Remember that a list starts with the index “0” – so “1” is actually the second item! Likewise, the second number is non-inclusive).
This is essentially using a backwards range in order to do the same thing!
How to reverse a list in Python manually
While there are not many scenarios where it would be necessary, it’s also possible to use a similar method to reverse a list manually:
for n in reversed(listOfNames):
newList.append(n)
This could potentially be useful if you need to check the values as you create the new string, or if you need to manipulate them in some other way.
So there you have it! That’s how to reverse a list in Python. Pretty simple!
This is just one of countless useful operations to be learned in Python. With each new skill, you’ll find your code becomes cleaner and more powerful! Why not extend your knowledge further with an online course? We compiled a list of the best online Python courses, which you can check out here: