Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #97866

Re: If one IF is satisfied, skip the rest in the nest...

From John Gordon <gordon@panix.com>
Newsgroups comp.lang.python
Subject Re: If one IF is satisfied, skip the rest in the nest...
Date 2015-10-21 17:46 +0000
Organization PANIX Public Access Internet and UNIX, NYC
Message-ID <n08j1u$mo4$1@reader1.panix.com> (permalink)
References <50a6789a-3965-430b-9a91-b08adcedf7bf@googlegroups.com>

Show all headers | View raw


In <50a6789a-3965-430b-9a91-b08adcedf7bf@googlegroups.com> bigred04bd3@gmail.com writes:

> So here what I have, I have a 3 IF's within the same level.  If one IF is s=
> atisfied, I would like to "skip" the other IFs and continue with my code.

> # 4 second open
>             if wb1_sheet1.cell(row=cell + 1, column=2).value == 0 and wb1_sheet1.cell(row=cell + 1, column=3).value == 0 and wb1_sheet1.cell(row=cell + 2, column=2).value == 0 and wb1_sheet1.cell(row=cell + 2, column=3).value == 0 and wb1_sheet1.cell(row=cell + 3, column=2).value == 0 and wb1_sheet1.cell(row=cell + 3, column=3).value == 0:
>                 open += 3
>                 open_seconds += 4
>                 start = wb1_sheet1.cell(row=cell + 4, column=2).coord=
> inate
>                 break
>             # 3 second open
>             if wb1_sheet1.cell(row=cell + 1, column=2).value == 0 a=
> nd wb1_sheet1.cell(row=cell + 1, column=3).value == 0 and wb1_sheet=
> 1.cell(row=cell + 2, column=2).value == 0 and wb1_sheet1.cell(row=
> =cell + 2, column=3).value == 0:
>                 open += 3
>                 start = wb1_sheet1.cell(row=cell + 3, column=2).coord=
> inate
>                 open_seconds += 3
>                 continue
>             # 2 second open
>             if wb1_sheet1.cell(row=cell + 1, column=2).value == 0 a=
> nd wb1_sheet1               .cell(row=cell + 1, column=3).value == =
> 0:
>                 open += 3
>                 start = wb1_sheet1.cell(row=cell + 2, column=2).coord=
> inate
>                 open_seconds += 2


> if any but the last IF is true, then all IFs will be true...that's my probl=
> em.

It looks like all three of your if statements start out with this condition:

    if wb1_sheet1.cell(row=cell + 1, column=2).value == 0 and wb1_sheet1.cell(row=cell + 1, column=3).value == 0

So you could reorganize your code by putting an if statement at the top
that only checks this condition.  Then, indented underneath, you can
check for the other conditions.

And be sure to use "else" and "elif" when they are appropriate.

-- 
John Gordon                   A is for Amy, who fell down the stairs
gordon@panix.com              B is for Basil, assaulted by bears
                                -- Edward Gorey, "The Gashlycrumb Tinies"

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

If one IF is satisfied, skip the rest in the nest... bigred04bd3@gmail.com - 2015-10-21 10:31 -0700
  Re: If one IF is satisfied, skip the rest in the nest... Ian Kelly <ian.g.kelly@gmail.com> - 2015-10-21 11:39 -0600
  Re: If one IF is satisfied, skip the rest in the nest... John Gordon <gordon@panix.com> - 2015-10-21 17:46 +0000
  Re: If one IF is satisfied, skip the rest in the nest... bigred04bd3@gmail.com - 2015-10-21 10:55 -0700
  Re: If one IF is satisfied, skip the rest in the nest... Denis McMahon <denismfmcmahon@gmail.com> - 2015-10-21 19:48 +0000
    Re: If one IF is satisfied, skip the rest in the nest... Grant Edwards <invalid@invalid.invalid> - 2015-10-21 20:07 +0000
      Re: If one IF is satisfied, skip the rest in the nest... Denis McMahon <denismfmcmahon@gmail.com> - 2015-10-22 02:08 +0000

csiph-web