import copy class P: def __init__(self, name): self.name = name def __repr__(self): return f'{self.name}' obj = P('orig') lst = [obj, obj] v = 5 for n in range(1, v): new = copy.deepcopy(obj) new.name = n lst.append(new) lst.extend(copy.deepcopy(obj) for _ in range(v)) print(lst) obj.name = 'new' print(lst)
Standard input is empty
[orig, orig, 1, 2, 3, 4, orig, orig, orig, orig, orig] [new, new, 1, 2, 3, 4, orig, orig, orig, orig, orig]