diff --git a/Lib/copy.py b/Lib/copy.py index da2908ef623d8c..8136d1818f5fa2 100644 --- a/Lib/copy.py +++ b/Lib/copy.py @@ -271,22 +271,16 @@ def _reconstruct(x, memo, func, args, setattr(y, key, value) if listiter is not None: - if deep: - for item in listiter: + for item in listiter: + if deep: item = deepcopy(item, memo) - y.append(item) - else: - for item in listiter: - y.append(item) + y.append(item) if dictiter is not None: - if deep: - for key, value in dictiter: + for key, value in dictiter: + if deep: key = deepcopy(key, memo) value = deepcopy(value, memo) - y[key] = value - else: - for key, value in dictiter: - y[key] = value + y[key] = value return y del types, weakref