On 5 июн, 19:38, George Sakkis <[EMAIL PROTECTED]> wrote: > On Jun 5, 11:21 am, Ivan Illarionov <[EMAIL PROTECTED]> wrote: > > > > > On 5 июн, 18:56, Ivan Illarionov <[EMAIL PROTECTED]> wrote: > > > > On 5 июн, 18:19, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> > > > wrote: > > > > > On Jun 5, 3:49 pm, Ivan Illarionov <[EMAIL PROTECTED]> wrote: > > > > > > On 5 ÉÀÎ, 01:57, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> > > > > > wrote: > > > > > > > Hi Everyone, > > > > > > > i have another question. What if i wanted to make n tuples, each > > > > > > with > > > > > > a list of coordinates. For example : > > > > > > > coords = list() > > > > > > for h in xrange(1,11,1): > > > > > > for i in xrange(1, 5, 1) : > > > > > > for j in xrange(1, 5, 1) : > > > > > > for k in xrange(1,2,1) : > > > > > > coords.append((i,j,k)) > > > > > > lista+str(h)= tuple coords > > > > > > print tuple(coords) > > > > > > > so that i will have tuple1, tuple2,..., tupleN, etc. I am trying to > > > > > > do > > > > > > it the way i show you above but it is not working properly. I wish > > > > > > you > > > > > > could help me with that. Thanks again, > > > > > >>> from itertools import repeat, izip > > > > > >>> coords = tuple((i,j,k) for i in xrange(1,5) for j in xrange(1,5) > > > > > >>> for k in xrange(1,2)) > > > > > >>> locals().update(("tuple%s" % i, coord) for i, coord in > > > > > >>> izip(xrange(1,11), repeat(coords))) > > > > > >>> tuple1 > > > > > > ((1, 1, 1), (1, 2, 1), (1, 3, 1), (1, 4, 1), (2, 1, 1), (2, 2, 1), (2, > > > > > 3, 1), (2 > > > > > , 4, 1), (3, 1, 1), (3, 2, 1), (3, 3, 1), (3, 4, 1), (4, 1, 1), (4, 2, > > > > > 1), (4, 3 > > > > > , 1), (4, 4, 1)) > > > > > > Does this help? > > > > > > But I don't understand why you need this? > > > > > > Ivan > > > > > Hi, > > > > > What i need is, for example: > > > > > tuple 1=((1, 1, 1), (1, 2, 1), (1, 3, 1), (1, 4, 1)) > > > > > tuple 2=((2, 1, 1), (2, 2, 1), (2, 3, 1), (2, 4, 1)) > > > > > tuple 3=((3, 1, 1), (3, 2, 1), (3, 3, 1), (3, 4, 1)) > > > > > and so on. Please help me and sorry for not taking the time to post my > > > > questions properly. > > > > > Victor > > > > Or even so: > > > > locals().update(("tuple_%s" % i, tuple((i,j,k) for j in range(1,5) for > > > k in range(1,2))) for i in range(1,5)) > > > > Ivan > > > Tried to make it readable: > > > def iter_coords(i): > > for j in xrange(1,5): > > for k in xrange(1,2): > > yield i, j, k > > > def iter_vars(): > > for i in xrange(1, 5): > > yield "tuple_%s" % i, tuple(iter_coords(i)) > > > locals().update(dict(iter_vars())) > > locals().update() works by accident here because it's in global scope; > it doesn't work within a function. > > Use a proper data structure, like a dict or a list, and access each > tuple list as 'tuples[n]' instead of 'tuple_n'. > > George
OP wanted variables and I showed him how to do this. I agree that a list or a dict would be better. Ivan -- http://mail.python.org/mailman/listinfo/python-list