indexerror: list index out of range??

Titiksha joshi.titiksha90 at gmail.com
Fri Jun 28 23:35:10 EDT 2013


On Friday, June 28, 2013 8:20:28 PM UTC-5, Titiksha wrote:
> Hi,
> 
> I am working on the following code but am getting the error: list index out of range. I surfed through the group but somehow I am not able to fix my error.Please guide.Structure is given below:
> 
> m is a list of 5 elements. I have to match elements of m from fields in file ALL_BUSES_FINAL.cvs.
> 
> m=['631138', '601034', '2834', '2908', '64808']
> 
> 
> 
> i=0
> 
> while i<len(m):
> 
>     print(i)
> 
>     my_file = open("ALL_BUSES_FINAL.csv", "r+")
> 
>     for line in my_file:
> 
>         if m[i] in line:
> 
>             print (line)
> 
>             a.append(line)
> 
>             i+=1
> 
>             print(a)
> 
>     my_file.close()
> 
> 
> 
> 
> 
> The output is as follows:
> 
> 0
> 
> LAKEFLD  3227,631138
> 
> 
> 
> ['LAKEFLD  3227,631138\n']
> 
> 
> 
> 1
> 
> NOBLES   3013,601034
> 
> 
> 
> ['LAKEFLD  3227,631138\n', 'NOBLES   3013,601034\n']
> 
> 
> 
> 2
> 
> GR_ISLD  I,2834
> 
> 
> 
> ['LAKEFLD  3227,631138\n', 'NOBLES   3013,601034\n', 'GR_ISLD  I,2834\n']
> 
> 
> 
> FTTHOMP  928,2908
> 
> 
> 
> ['LAKEFLD  3227,631138\n', 'NOBLES   3013,601034\n', 'GR_ISLD  I,2834\n', 'FTTHOMP  928,2908\n']
> 
> 
> 
> VICTRYH  15,64808
> 
> 
> 
> ['LAKEFLD  3227,631138\n', 'NOBLES   3013,601034\n', 'GR_ISLD  I,2834\n', 'FTTHOMP  928,2908\n', 'VICTRYH  15,64808\n']
> 
> Traceback (most recent call last):
> 
>   File "C:\Users\TJ\dist_tracking.py", line 40, in <module>
> 
>     if m[i] in line:
> 
> IndexError: list index out of range
> 
> >>> 
> 
> 
> 
> I see the line,a being correct but print (i) does not show up after 2. and index error comes up. I am too confused now. Please guide.
> 
> Thanks in advance.

Thanks for helping out! 
Dave you mentioned about false matches in case of string in m is substring of line. How do I manage that issue? Is there any other method I should look into?

What I am looking to do is..I have a list of m which I need to map in the same sequence to the ALL_BUSES_FINAL file and get the entire line which has the string in m.I want to iterate through all the lines in ALL_BUSES_FINAL to match the all strings in m.







More information about the Python-list mailing list