Simple list.append() question

Kevin Cazabon kcazabon at home.com
Wed Apr 26 00:24:41 EDT 2000


Aw, comon, I was having fun... q:]


"Martijn Faassen" <m.faassen at vet.uu.nl> wrote in message
news:8e4akc$p7o$1 at newshost.accu.uu.nl...
> Kevin Cazabon <kcazabon at home.com> wrote:
> > well, if not prettier, why not obfuscate it?  q:]  Although this isn't
> > pretty, I'm sure we can make it a little less intelligable with some
work.
>
> > entire_list = [];for i in range(3):entire_list.append([])
>
> If you write it the normal way:
>
> entire_list = []
> for i in range(3):
>     entire_list.append([])
>
> It's pretty, readable, flexible, and it works. The only disadvantage is
> that it's less short. But I'm willing to pay that price in this situation.
>
> Generally it's a good idea to avoid * on sequences, unless that sequence
is
> immutable and contains immutable things; i.e. strings. I don't recall
> using * on tuples ever, but you can do so safely if the tuple contains
> immutable things only.
>
> Is there any useful way to use * on lists that I missed? Usually we want
> the copy semantics here, not the reference semantics. Perhaps it's a good
> idea to completely forbid * on lists in p3k? Tuples too for all I care.
> Then again I may be missing important uses, so enlighten me.
>
> Regards,
>
> Martijn
> --
> History of the 20th Century: WW1, WW2, WW3?
> No, WWW -- Could we be going in the right direction?





More information about the Python-list mailing list