On Tue, Mar 30, 2010 at 2:31 PM, Justin Park <h...@rice.edu> wrote: > Suppose I have a list. > a = list() > And suppose allowed digits as the element are 1,2,3,4,5. > > What can I do in order to iterate over all possible values for each element? > For instance, the sequence of the list I want to have would be > [1,1,1,1,1] > [1,1,1,1,2] > [1,1,1,1,3] > > .... > > [5,5,5,5,4] > [5,5,5,5,5] > > How can I make it happen?
allowed = range(1,6) length = 5 for counter_tuple in product(allowed, repeat=length): counter_list = list(counter_tuple) # if you really need a list #do whatever with the counter value See the docs for itertools.product(); an example virtually identical to your situation is given: http://docs.python.org/library/itertools.html#itertools.product Cheers, Chris -- http://blog.rebertia.com -- http://mail.python.org/mailman/listinfo/python-list