diff -r 9552f8af321e Lib/re.py --- a/Lib/re.py Wed Sep 28 07:53:32 2016 +0300 +++ b/Lib/re.py Wed Sep 28 08:28:29 2016 +0300 @@ -301,7 +301,9 @@ def _compile(pattern, flags): p = sre_compile.compile(pattern, flags) if not (flags & DEBUG): if len(_cache) >= _MAXCACHE: - _cache.clear() + for k in _cache: + del _cache[k] + break if p.flags & LOCALE: if not _locale: return p