diff options
author | Guido van Rossum <guido@python.org> | 1996-06-17 17:10:11 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1996-06-17 17:10:11 (GMT) |
commit | 6afff6139a445de62a9cb45dadf1b9ca905f2540 (patch) | |
tree | 1d6b5786e13ee32647169b4892bf5c309ad4f915 | |
parent | 7c46a920ae214c43b18a0c064c7bf80492a434c9 (diff) | |
download | cpython-6afff6139a445de62a9cb45dadf1b9ca905f2540.zip cpython-6afff6139a445de62a9cb45dadf1b9ca905f2540.tar.gz cpython-6afff6139a445de62a9cb45dadf1b9ca905f2540.tar.bz2 |
Memoize _deepcopy_tuple() -- maybe this helps Tommy's problem.
-rw-r--r-- | Lib/copy.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/Lib/copy.py b/Lib/copy.py index a48e8c8..15e0e40 100644 --- a/Lib/copy.py +++ b/Lib/copy.py @@ -182,8 +182,12 @@ def _deepcopy_tuple(x, memo): pass for i in range(len(x)): if x[i] is not y[i]: - return tuple(y) - return x + y = tuple(y) + break + else: + y = x + memo[d] = y + return y d[types.TupleType] = _deepcopy_tuple def _deepcopy_dict(x, memo): |