the.theorist wrote: > I'll keep both those in mind for future programs. > my current fix has been > > if not args: > args = [ sys.stdin ] > else: > map( open, args ) > > and then a modification to the main loop, as you proposed. > > I thought that one day I might run into a problem opening too many > files though (esp if i used xargs in a pipe). And it just feels > better to open and close as I loop over the files list, rather than > open everything at the get go. > > OH, i've noticed you used a generator that takes care of that. Except, > the machine I'm working on is currently stuck at Python 2.3. Still, > I'll keep your suggestions in mind for future coding.
use if args: args = itertools.imap(open, args) else: args = [sys.stdin] to get the same lazy-open behaviour as with the generator expression. Or have a look at http://docs.python.org/lib/module-fileinput.html. Peter -- http://mail.python.org/mailman/listinfo/python-list