howto handle nested for

Ian Kelly ian.g.kelly at gmail.com
Fri Sep 28 11:49:36 EDT 2012


On Fri, Sep 28, 2012 at 8:39 AM, Neal Becker <ndbecker2 at gmail.com> wrote:
> I know this should be a fairly basic question, but I'm drawing a blank.
>
> I have code that looks like:
>
>   for s0 in xrange (n_syms):
>         for s1 in xrange (n_syms):
>             for s2 in xrange (n_syms):
>                 for s3 in xrange (n_syms):
>                     for s4 in range (n_syms):
>                         for s5 in range (n_syms):
>
> Now I need the level of nesting to vary dynamically.  (e.g., maybe I need to add
> for  s6 in range (n_syms))
>
> Smells like a candidate for recursion.  Also sounds like a use for yield.  Any
> suggestions?

levels = 6
for combination in itertools.product(xrange(n_syms), levels):
    # do stuff

Cheers,
Ian



More information about the Python-list mailing list