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