Hello readers, welcome back to a yet another post of The Crazy Programmer. Today I’ll be discussing one of the common error programmers make when they start with programming and that is IndexError. Now before talking about this error, let’s try to see what an Index is and why this error occurs.
An index is a location of an item in an Array or a List and in most of the programming language, it starts from 0. So when we count the elements in a list, we’ll count them from 1 but when we’ll try to access the elements of the list, we’ll start our index from 0. Let us understand this with an example. Please don’t skip the comments.
color = ['red', 'green', 'blue', 'black', 'white'] # index 0 1 2 3 4 # here we can see that we have 5 colors in our color list # but when we'll try to print these items from our list # we can't get color[1] as red # this is because we may find red to be the first element # but technically it is not at index 1 # to print red, we need to use 0 as the index and similarly # for other colors, we have to use the index accordingly print(color[0]) # 0 for red print(color[1]) # 1 for green print(color[2]) # 2 for blue print(color[3]) # 3 for black print(color[4]) # 4 for white
So we can say that green is the 2nd element of the color list but we cannot say that it is at index ‘2’. Similarly white is at 5th position but it is not at 5th index. If we’ll try to access white and if we’ll use print(color[5]) to access white, then it is going to give us an error i.e. IndexError: list index out of range.
Here we all can see that I’m trying to print the value of a list at an index ‘5’ but here in the array, we don’t have any element at that index.
Now the interpreter will try to parse this code and it will not find any value at 4th index and ultimately it will fail to print the value.
So now I think it is clear why IndexError occurs and how you can avoid them. Still, if you stuck into any kind of error, don’t forget to google it and try to debug it on your own. This will teach you how to debug your code as someone might have faced a similar problem earlier.
If you still don’t find any solution for your problem, you can ask your doubt in the comment’s section below and we’ll get back to you🤓.
This was all for today. Thanks for your visit and if you are new here, consider subscribing to our newsletter. See you in my next post. Bye!
This is coo!
n=int(input())
grid=[]
sum=0
s=0
k=4
for i in range(n):
lists=[int(i) for i in input().split()]
grid.append(lists)
for j in range(len(grid)):
sum=sum+grid[j][j]
k=k-1
s=s+grid[j][k]
print(sum)
print(s)
When i run my prog it shows
IndexError: list index out of range
for the line
s=s+grid[j][k]
Please help me to solve my problem and give me the reason