Here is an excerpt. It works because the end condition is a fixed number (ln==10255), the approximate number of data lines in a file. If I replace that condition by EOFError, the program does not do the intended work. It appears as if EOFError is always true in this case.

+++++++++++++++++++++++++++++++++++++++++++

for line in fileinput.input(logs):
           if line.split()[0]=='DataID':
               datsec=True
               ln=0
           if datsec:
               lines[fn].append(line.split())
               ln+=1
               if ln==10255:
                   datsec=False
                   fileinput.nextfile()
                   fn+=1
                   print fileinput.filename().rsplit('\\',1)[1]
       fileinput.close()

+++++++++++++++++++++++++++++++++++++++++++

Regards,
Alex van der Spek


"Alex van der Spek" <zd...@xs4all.nl> wrote in message news:4c696751$0$22940$e4fe5...@news.xs4all.nl...
Using the fileinput module to process lists of files:

for line in fileinput.input(logs):

Unfortunately, EOFError does not seem to indicate the end-of-file condition correctly when using fileinput.

How would you find the EOF file for all the files in the file list 'logs'?

Thank you,
Alex van der Spek

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to