affectation in if statement

samb sam.bancal at gmail.com
Tue Mar 16 03:45:34 EDT 2010


Hi,
I'm trying to do something like :
if m = re.match(r'define\s+(\S+)\s*{$', line):
 thing = m.group(1)
elif m = re.match(r'include\s+(\S+)$', line):
 thing = m.group(1)
else
 thing = ""
But in fact I'm not allowed to affect a variable in "if" statement.
My code should then look like :
if re.match(r'define\s+(\S+)\s*{$', line):
 m = re.match(r'define\s+(\S+)\s*{$', line)
 thing = m.group(1)
elif re.match(r'include\s+(\S+)$', line):
 m = re.match(r'include\s+(\S+)$', line)
 thing = m.group(1)
else
 thing = ""
Which is not nice because I'm doing twice the same instruction
or like :
m = re.match(r'define\s+(\S+)\s*{$', line)
if m:
 thing = m.group(1)
else:
 m = re.match(r'include\s+(\S+)$', line)
 if m:
 thing = m.group(1)
 else
 thing = ""
Which isn't nice neither because I'm going to have maybe 20 match
tests and I wouldn't like to have 20 indentations.
Anyone a recommendation?
Thanks!


More information about the Python-list mailing list

AltStyle によって変換されたページ (->オリジナル) /