When does the
IndexError: list assignment index out of range appear?
Python throws an
IndexError if you try to assign a value to a list index that doesn’t exist, yet. For example, if you execute the expression
list = 10 on an empty
list, Python throws the
IndexError. Simply resolve it by adding elements to your list until the index actually exists.
Here’s the minimal example that throws the IndexError:
lst =  lst = 10
If you run this code, you’ll see that Python throws an
Traceback (most recent call last): File "C:\Users\xcent\Desktop\code.py", line 2, in <module> lst = 10 IndexError: list assignment index out of range
You can resolve it by adding two “dummy” elements to the list so that the index 1 actually exists in the list:
lst = [None, None] lst = 10 print(lst)
Now, Python will print the expected output:
Try to fix the
IndexError in the following interactive code shell:
Exercise: Can you fix this code?
So what are some other occurrences of the IndexError?
IndexError in For Loop
IndexError happens if you use a
for loop to modify some list elements like here:
# WRONG CODE: lst =  for i in range(10): lst[i] = i print(lst)
Again, the result is an
Traceback (most recent call last): File "C:\Users\xcent\Desktop\code.py", line 4, in <module> lst[i] = i IndexError: list assignment index out of range
You modify a list element at index
i that doesn’t exist in the list. Instead, create the list using the
list(range(10)) list constructor.
# CORRECT CODE: lst = list(range(10)) print(lst) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Where to Go From Here?
You’ve learned how to resolve one error. By doing this, your Python skills have improved a little bit. Do this every day and soon, you’ll be a skilled master coder.
Do you want to leverage those skills in the most effective way? In other words: do you want to earn money with Python?
If the answer is yes, let me show you a simple way how you can create your simple, home-based coding business online:
Start your new thriving coding business now!