深拷贝和浅拷贝区别

深拷贝和浅拷贝区别

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

import copy
n1 = {"k1": "wu", "k2": 123, "k3": ["alex", 456]}
n2 = copy.copy(n1)
print("befor:\n n1:%s\n n2:%s \n n1id:%s\n n2id:%s \n"%(n1,n2,id(n1),id(n2)))
n1['k3'].append(12)
print("after1:\n n1:%s\n n2:%s \n n1id:%s\n n2id:%s \n"%(n1,n2,id(n1),id(n2)))
n1["kk"]=12
print("after2:\n n1:%s\n n2:%s \n n1id:%s\n n2id:%s \n"%(n1,n2,id(n1),id(n2)))

output

befor:
 n1:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456]}
 n2:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456]} 
 n1id:1466361469256
 n2id:1466361470048 

after1:
 n1:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456, 12]}
 n2:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456, 12]} 
 n1id:1466361469256
 n2id:1466361470048 

after2:
 n1:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456, 12], 'kk': 12}
 n2:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456, 12]} 
 n1id:1466361469256
 n2id:1466361470048 
import copy
n1 = {"k1": "wu", "k2": 123, "k3": ["alex", 456]}
n2 = copy.deepcopy(n1)
print("befor:\n n1:%s\n n2:%s \n n1id:%s\n n2id:%s \n"%(n1,n2,id(n1),id(n2)))
n1['k3'].append(12)
print("after1:\n n1:%s\n n2:%s \n n1id:%s\n n2id:%s \n"%(n1,n2,id(n1),id(n2)))
n1["kk"]=12
print("after2:\n n1:%s\n n2:%s \n n1id:%s\n n2id:%s \n"%(n1,n2,id(n1),id(n2)))

output

befor:
 n1:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456]}
 n2:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456]} 
 n1id:1466361468104
 n2id:1466360792768 

after1:
 n1:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456, 12]}
 n2:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456]} 
 n1id:1466361468104
 n2id:1466360792768 

after2:
 n1:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456, 12], 'kk': 12}
 n2:{'k1': 'wu', 'k2': 123, 'k3': ['alex', 456]} 
 n1id:1466361468104
 n2id:1466360792768 

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值