On Tue, 04 Nov 2008 15:36:23 -0600, Larry Bates <[EMAIL PROTECTED]> wrote: > [EMAIL PROTECTED] wrote: >> tmallen: >>> I'm parsing some text files, and I want to strip blank lines in the >>> process. Is there a simpler way to do this than what I have here? >>> lines = filter(lambda line: len(line.strip()) > 0, lines) ...
> Of if you want to filter/loop at the same time, or if you don't want all the > lines in memory at the same time: Or if you want to support potentially infinite input streams, such as a pipe or socket. There are many reasons this is my preferred way of going through a text file. > fp = open(filename, 'r') > for line in fp: > if not line.strip(): > continue > > # > # Do something with the non-blank like: > # > > > fp.close() Often, you want to at least rstrip() all lines anyway, for other reasons, and then the extra cost is even less: line = line.rstrip() if not line: continue # do something with the rstripped, nonblank lines /Jorgen -- // Jorgen Grahn <grahn@ Ph'nglui mglw'nafh Cthulhu \X/ snipabacken.se> R'lyeh wgah'nagl fhtagn! -- http://mail.python.org/mailman/listinfo/python-list