Re: simple question on persisting variable values in a list

2007-11-20 Thread Paul Hankin
On Nov 20, 9:41 pm, [EMAIL PROTECTED] wrote:
> On Nov 20, 3:25 pm, [EMAIL PROTECTED] 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:
>
> 
>
> >>> 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
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: simple question on persisting variable values in a list

2007-11-20 Thread kyosohma
On Nov 20, 3:25 pm, [EMAIL PROTECTED] 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:



>>> x = 'blah\nblah\n'
>>> lst = []
>>> templine = ''
>>> for char in x:
if char == '\n':
temp = templine
lst.append(temp)
templine = ''
else:
templine += char


>>> lst
['blah', 'blah']



Mike
-- 
http://mail.python.org/mailman/listinfo/python-list


simple question on persisting variable values in a list

2007-11-20 Thread dgrissen
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,,,
-- 
http://mail.python.org/mailman/listinfo/python-list