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