initialising a list of lists
Peter Kleiweg
p.c.j.kleiweg at rug.nl
Wed Nov 16 08:27:30 EST 2005
Fredrik Lundh schreef op de 16e dag van de slachtmaand van het jaar 2005:
> Peter Kleiweg wrote:
>
> > This does not what I want it to do:
> >
> > >>> a = [[]] * 6
> > >>> a[3].append('X')
> > >>> a
> > [['X'], ['X'], ['X'], ['X'], ['X'], ['X']]
> >
> > This does what I want:
> >
> > >>> b = [[] for _ in range(6)]
> > >>> b[3].append('X')
> > >>> b
> > [[], [], [], ['X'], [], []]
> >
> > The first is clear and wrong. The second is hairy and right.
> > Is there a way to do it clear and right?
>
> http://www.python.org/doc/faq/programming.html#how-do-i-create-a-multidimensional-list
In other words: no there isn't.
--
Peter Kleiweg L:NL,af,da,de,en,ia,nds,no,sv,(fr,it) S:NL,de,en,(da,ia)
info: http://www.let.rug.nl/~kleiweg/ls.html
More information about the Python-list
mailing list