From: Benjamin Peterson Date: Sun, 4 May 2014 00:22:00 +0000 (-0400) Subject: improve idioms (closes #20642) X-Git-Tag: v3.5.0a1~1741 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4ce5f3f203c1c510bd1eff4d8fffea6198e40b4d;p=thirdparty%2FPython%2Fcpython.git improve idioms (closes #20642) Patch by Claudiu Popa. --- diff --git a/Lib/copy.py b/Lib/copy.py index bb8840ed549a..383609bc648f 100644 --- a/Lib/copy.py +++ b/Lib/copy.py @@ -221,17 +221,15 @@ def _deepcopy_list(x, memo): d[list] = _deepcopy_list def _deepcopy_tuple(x, memo): - y = [] - for a in x: - y.append(deepcopy(a, memo)) + y = [deepcopy(a, memo) for a in x] # We're not going to put the tuple in the memo, but it's still important we # check for it, in case the tuple contains recursive mutable structures. try: return memo[id(x)] except KeyError: pass - for i in range(len(x)): - if x[i] is not y[i]: + for k, j in zip(x, y): + if k is not j: y = tuple(y) break else: