Simple text parsing gets difficult when line continues to next line

Larry Bates larry.bates at websafe.com
Tue Nov 28 19:11:49 CET 2006


Jacob Rael wrote:
> Hello,
> 
> I have a simple script to parse a text file (a visual basic program)
> and convert key parts to tcl. Since I am only working on specific
> sections and I need it quick, I decided not to learn/try a full blown
> parsing module. My simple script works well until it runs into
> functions that straddle multiple lines. For example:
> 
>   Call mass_write(&H0, &HF, &H4, &H0, &H5, &H0, &H6, &H0, &H7, &H0,
> &H8, &H0, _
>                 &H9, &H0, &HA, &H0, &HB, &H0, &HC, &H0, &HD, &H0, &HE,
> &H0, &HF, &H0, -1)
> 
> 
> I read in each line with:
> 
> for line in open(fileName).readlines():
> 
> I would line to identify if a line continues (if line.endswith('_'))
> and concate with the next line:
> 
> line = line + nextLine
> 
> How can I get the next line when I am in a for loop using readlines?
> 
> jr
> 
Something like (not tested):

fp=open(filename, 'r')
for line in fp:
    while line.rstrip().endswith('_'):
        line+=fp.next()


fp.close()

-Larry




More information about the Python-list mailing list