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. -- http://mail.python.org/mailman/listinfo/python-list