首页 > 代码库 > python基础(深浅拷贝)
python基础(深浅拷贝)
本文主要介绍:深浅拷贝
注意:在python中有一种自己的优化机制,通常来说字符串在内存中的地址是不相同的,但是在python中,不管是深拷贝还是浅拷贝,只要是通过拷贝的字符串,两个地址是相同的
一、创建
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # author by lh 4 5 import copy 6 7 li = [[1, 2], 3, 4] 8 # 浅拷贝 9 li2 = li.copy()10 li2[0][1] = 311 print(li)12 print(li2)13 14 # 深拷贝15 li3 = copy.deepcopy(li)16 li3[0][1] = 517 print(li3)18 print(li)
二、内存中的实现代码:
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # author by lh 4 5 import copy 6 n1=‘lh‘ 7 n2=copy.copy(n1) 8 n3=copy.deepcopy(n1) 9 print id(n1)10 print id(n2)11 print id(n3)12 13 n4={‘k1‘:‘lh‘,‘n2‘:123,‘n3‘:4556}14 n5=copy.copy(n4)15 print id(n4)16 print id(n5)17 print id(n4[‘k1‘])18 print id(n5[‘k1‘])
python基础(深浅拷贝)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。