simple question on persisting variable values in a list
Paul Hankin
paul.hankin at gmail.com
Tue Nov 20 18:55:34 EST 2007
On Nov 20, 9:41 pm, kyoso... at gmail.com wrote:
> On Nov 20, 3:25 pm, dgris... at gmail.com wrote:
>
>
>
> > Hi,
>
> > I am an unabashed noob.
>
> > I am trying to build a list to store values that are generated through
> > a loop. However, every time I append the variable to the list, I'd
> > like to reset the variable, but have the value persist in the loop. I
> > understand why this doesn't work because it's a reference not a
> > literal value but have been unsuccessful at using copy.copy() or
> > anything else to accomplish this:
>
> > for char in splitlines[r]:
>
> > if char == "\n":
> > temp = copy.deepcopy(templine)
> > individline.append(temp)
> > templine = ""
> > else:
> > templine += char
>
> > results.append(individline)
>
> > This just gives me the last element in splitlines[r] - what i want is
> > to persist each line that is parsed from splitlines[] into the results
> > list.
>
> > Appreciate any help,,,
>
> Not sure if this is what you want, but here's what I did:
>
> <IDLE session>
>
> >>> x = 'blah\nblah\n'
> >>> lst = []
> >>> templine = ''
> >>> for char in x:
>
> if char == '\n':
> temp = templine
> lst.append(temp)
> templine = ''
> else:
> templine += char
No need for all that code, because you're reimplementing the 'split'
method of strings:
x = 'blah\nblah\n'
lst = x.split('\n')[:-1]
--
Paul Hankin
More information about the Python-list
mailing list