Initializing a list of lists
Ron Adam
rrr at ronadam.com
Sun Mar 19 16:19:29 EST 2006
tkpmep at hotmail.com wrote:
> I want to create a list of lists, each of which is identical, but which
> can be modified independently i.e:
>
>>>> x = [ [0], [0], [0] ]
>>>> x[0].append(1)
>>>> x
> [[0, 1], [0], [0]]
>
> The above construct works if I have only few items, but if I have many,
> I'd prefer to write
>>>> N =3
>>>> x =N*[[0]]
>>>> x
> [[0], [0], [0]]
>
> If I now try extending the lists indepently, I cannot, as they all
> point to the same list object
>>>> x[0].append(1)
>>>> x
> [[0, 1], [0, 1], [0, 1]]
>
> Is there a simple way to create a list of independent lists?
Try this...
x, y, value = 3, 3, 0
L = [[value]*x for i in xrange(y)]
Cheers,
Ron
More information about the Python-list
mailing list