Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #91834
| References | <CANFcO8tOLorV1kuGJo6Vgb-e02EhC3NL2U7oiNRNF+b2s2M2ig@mail.gmail.com> <1831776353.1951415.1433246463232.JavaMail.root@sequans.com> |
|---|---|
| Date | 2015-06-02 14:52 +0200 |
| Subject | Re: for...else |
| From | acdr <mail.acdr@gmail.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.57.1433249640.13271.python-list@python.org> (permalink) |
That would work for my example, but it would only really work if all the calculations are in a nice function. If I just have a block of code, then I can't use it as easily. (E.g. replace "complicated_calculation_2()" by multiple lines of code, which I don't want to shove into a separate function.) On 6/2/15, Jean-Michel Pichavant <jeanmichel@sequans.com> wrote: > ----- Original Message ----- >> From: "acdr" <mail.acdr@gmail.com> >> To: python-list@python.org >> Sent: Tuesday, 2 June, 2015 1:26:42 PM >> Subject: for...else >> >> Hi, >> >> Currently, in various places in my code, I have the equivalent of: >> >> for x in it: >> if complicated_calculation_1(): >> cleanup() >> break >> complicated_calculation_2() >> if complicated_calculation_3(): >> cleanup() >> break > > Hi > > With the following layout, adding calculation steps is just a matter of > adding a line > > for x ion it: > for calc, cbk in [ > (complicated_calculation_1, cleanup), > (complicated_calculation_2, None), > (complicated_calculation_3, cleanup), > ]: > if calc() and cbk: > cbk() > break > > It might give you ideas. > > JM > > > -- IMPORTANT NOTICE: > > The contents of this email and any attachments are confidential and may also > be privileged. If you are not the intended recipient, please notify the > sender immediately and do not disclose the contents to any other person, use > it for any purpose, or store or copy the information in any medium. Thank > you. >
Back to comp.lang.python | Previous | Next | Find similar | Unroll thread
Re: for...else acdr <mail.acdr@gmail.com> - 2015-06-02 14:52 +0200
csiph-web