"Doran, Harold" <[EMAIL PROTECTED]> wrote: > If these files followed a naming convention such as 1.txt and 2.txt I > can easily see how these could be parsed consecutively in a loop. > However, they are not and so is it possible to modify this code such > that I can tell python to parse all .txt files in a certain directory > and then to save them as separate files? For instance, using the example > above, python would parse both spam.txt and eggs.txt and then save 2 > different files, say as spam_parsed.txt and eggs_parsed.txt. >
This isn't exactly what you asked for, but have you looked at the fileinput module: it will process a list of filenames pointing stdin at each file in turn, optionally it can work inplace, but without that option I think it is pretty close to what you want (warning, untested code follows): output = None for line in fileinput.input(n for n in glob.glob('*.txt') if not n.endswith('_parsed.txt')): if fileinput.isfirstline(): if output: output.close() output = open(fileinput.filename().replace('.', '_parsed.', 1), 'w') print >>output, "parsed:", line.strip() if output: output.close() -- http://mail.python.org/mailman/listinfo/python-list