How to Solve IndexError: List index out of Range in Python
Table of Contents
In Python, you will get an error when you try to access an index in a list that is out of range.
This is because a list is a collection of items, and the index is the position of the item in the list, so if you try to access an index that is out of the range of the list, you will get an error.
In this post, we'll learn how we can avoid getting the IndexError: list index out of range
error.
How to avoid the IndexError error
Before we learn how to avoid it, let's take a look at an example code that will result in the error:
PYTHONlist = [1, 2, 3, 4, 5]
print(list[5])
This results in the following output:
PYTHONTraceback (most recent call last):
File "main.py", line 3, in <module>
print(list[5])
IndexError: list index out of range
Ultimately, you just need to ensure that the number you're using to access the list does not exceed the length of the list, minus one.
Let's look at code that calculates the highest possible index that is safe to use:
PYTHONlist = [1, 2, 3, 4, 5]
max = len(list) - 1
print(max)
BASH4
Now, let's try to access the item at the highest index:
PYTHONprint(list[max])
BASH5
It worked, we did not get an error. In general, you are free to access any index 0
or above, and below the highest index, which in this case we set to the variable named max
.
Conclusion
In this post, we learned how to avoid the IndexError: list index out of range
error.
The solution is to ensure the index is not out of the range of the list, which is from 0
to max
, where max
is the length of the list minus one.
Hopefully, you've found this post helpful! Happy coding!
- Getting Started with TypeScript
- How to Install Node on Windows, macOS and Linux
- Managing PHP Dependencies with Composer
- Getting Started with Svelte
- Git Tutorial: Learn how to use Version Control
- How to deploy a .NET app using Docker
- How to deploy a Deno app using Docker
- Using Puppeteer and Jest for End-to-End Testing
- How to Scrape the Web using Node.js and Puppeteer
- Getting User Location using JavaScript's Geolocation API
- Setting Up Stylus CSS Preprocessor
- Using Axios to Pull Data from a REST API