On Sep 29, 8:19 am, George Sakkis <[EMAIL PROTECTED]> wrote: > On Sep 29, 10:34 am, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> > wrote: > > > > > [EMAIL PROTECTED] wrote: > > > > On 29 sep, 12:04, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote: > > > >> for i in generator_a: # the first "for" cycle > > >> for j in generator_b: > > >> if something_happen: > > >> # do something here ..., I want the outer cycle to break > > >> break > > > > Do you like this? > > > > generator_ab = ((x, y) for x in generator_a for y in generator_b) > > > for i, j in generator_ab: > > > if condition: > > > # do something > > > break > > > In this case, the tuple generator_ab must be generated first. > George
You can get specific break points by expanding the for loop into a while loop, and this is perhaps why it has never been implemented with for loops. ctr_a=0 ctr_b=0 while ctr_a < len(generator_a): this_el_a = generator_a[ctr_a] while ctr_b < len(generator_b): this_el_b = generator_b[ctr_ b] if something_happen: ctr_b = len(generator_b) ## break this loop if something_else: ctr_a = len(generator_a) ## break outer while loop ctr_b += 1 ctr_a += 1 -- http://mail.python.org/mailman/listinfo/python-list