Re: list assignment using concatenation "*"

2006-02-24 Thread Steve R. Hastings
I suggest you should build your list using a list comprehension: >>>a = [[0]*3 for i in range(3)] >>>a [[0, 0, 0], [0, 0, 0], [0, 0, 0]] >>>a[0][1] = 1 [[0, 1, 0], [0, 0, 0], [0, 0, 0]] -- Steve R. Hastings"Vita est" [EMAIL PROTECTED]http://www.blarg.net/~steveha -- http://mail.python.

Re: list assignment using concatenation "*"

2006-02-24 Thread Steve R. Hastings
> if I do: > > a = [ [0] * 3 ] * 3 > a[0][1] = 1 > > I get > > a = [[0,1,0],[0,1,0],[0,1,0]] The language reference calls '*' the "repetition" operator. It's not making copies of what it repeats, it is repeating it. Consider the following code: >>> a = [] >>> b = [] >>> a == b True >>> a is

Re: list assignment

2006-02-23 Thread Bernhard Herzog
Norvell Spearman <[EMAIL PROTECTED]> writes: > Lutz and Ascher have tuple and list assignment as separate entries in > their assignment statement forms table so I was expecting there to be > some difference; thanks for setting me straight. In older Python versions there was a difference between l

Re: list assignment

2006-02-22 Thread Norvell Spearman
Jeffrey Schwab wrote: > TMTOWTDI, after all. :) A bit ironic that that's the official motto of Perl, don't you think? -- Norvell Spearman -- http://mail.python.org/mailman/listinfo/python-list

Re: list assignment

2006-02-22 Thread Norvell Spearman
Raymond Hettinger wrote: > It's not different. They are ways of writing the same thing. Lutz and Ascher have tuple and list assignment as separate entries in their assignment statement forms table so I was expecting there to be some difference; thanks for setting me straight. -- Norvell Spearm

Re: list assignment

2006-02-22 Thread Jeffrey Schwab
Raymond Hettinger wrote: >> [spam, ham] = ['yum', 'YUM'] >> >>I don't see how this is any different than a tuple unpacking assignment: >> >> >>> a, b = 1, 2 > > > It's not different. They are ways of writing the same thing. TMTOWTDI, after all. :) -- http://mail.python.org/mailman/list

Re: list assignment

2006-02-22 Thread Raymond Hettinger
> [spam, ham] = ['yum', 'YUM'] > > I don't see how this is any different than a tuple unpacking assignment: > > >>> a, b = 1, 2 It's not different. They are ways of writing the same thing. Raymond Hettinger -- http://mail.python.org/mailman/listinfo/python-list