【原型模式】

问题

需要克隆一个对象

原型模式

创建对象的克隆(例如:python中的copy)

Demo

背景 && 需求

克隆对象

代码

1
2
3
4
5
6
7
import copy

def demo():
info1 = dict(name='123', books=['book1', 'book2'])
info2 = copy.deepcopy(info1)
print(f'info1: {id(info1)}, name: {id(info1["name"])}, books: {id(info1["books"])}')
print(f'info2: {id(info2)}, name: {id(info2["name"])}, books: {id(info2["books"])}')

输出

info1: 4540133696, name: 4538957168, books: 4540422336
info2: 4538883840, name: 4538957168, books: 4540493376