OK to memoize re objects?
kj
no.email at please.post
Sat Sep 19 19:22:12 EDT 2009
My Python code is filled with assignments of regexp objects to
globals variables at the top level; e.g.:
_spam_re = re.compile('^(?:ham|eggs)$', re.I)
Don't like it. My Perl-pickled brain wishes that re.compile was
a memoizing method, so that I could use it anywhere, even inside
tight loops, without ever having to worry about the overhead of
regexp compilation.
Of course, I can do the memoization myself. Would it be a bad
idea? How much state does a re object keep? Or to put it differently,
what should be avoided to keep a regexp object essentially "stateless",
so that its memoization makes sense?
TIA!
kynn
More information about the Python-list
mailing list