diff --git a/Lib/re.py b/Lib/re.py index 1d9c987c1cd..ee962bbc8f8 100644 --- a/Lib/re.py +++ b/Lib/re.py @@ -316,7 +316,7 @@ def scan(self, string): if i == j: break action = self.lexicon[m.lastindex-1][1] - if callable(action): + if hasattr(action, '__call__'): self.match = m action = action(self, m.group()) if action is not None: