How best to write this if-else?
gzeljko
gzeljko at sezampro.yu
Sat Apr 21 18:03:24 EDT 2001
From: Mick <vsl6 at paradise.net.nz>
> for i in all:
> ma = i[0].match(str)
> if ma:
> i[1](ma)
>
for r,f in all:
ma = r.mach(str)
if ma:
f(ma)
ly-y'rs-gzeljko
>
> Mick
>
>
> -----Original Message-----
> From: python-list-admin at python.org
> [mailto:python-list-admin at python.org]On Behalf Of Roy Smith
> Sent: Sunday, April 22, 2001 9:02 AM
> To: python-list at python.org
> Subject: Re: How best to write this if-else?
>
>
> "Ingo Wilken" <Ingo.Wilken at Informatik.Uni-Oldenburg.DE> wrote:
> > for e in [e1, e2, e3]:
> > m = e.match(line)
> > if m:
> > text = m.group(1)
> > break
> > else:
> > no match found
>
> OK, that's pretty neat, but I realize now that my example was
> unintentionally misleading. The problem is not quite as regular as I made
> it out to be.
>
> What if I want to execute different code depending on which expression I
> matched? Something along the lines of (pseudocode):
>
> if (m = e1.match(line)):
> text1 = m.group(1)
> do_complicated_processing (text1)
> elif (m = e2.match(line)):
> text1 = m.group(1)
> text2 = m.group(2)
> print text1, text2
> elif (m = e3.match(line)):
> return
> --
> http://mail.python.org/mailman/listinfo/python-list
>
>
> --
> http://mail.python.org/mailman/listinfo/python-list
>
More information about the Python-list
mailing list