首页 > 编程语言 > 详细

python 深浅拷贝

时间:2019-08-12 21:50:10      阅读:91      评论:0      收藏:0      [点我收藏+]

深拷贝 与 浅拷贝

a = 19
b = a
a = 20
print(b)

lst = [1,2,3]
lst2 = lst
lst.append(4)
print(lst)

(1) 浅拷贝 (只拷贝一级,其他的层级沿用以前的数据)

lst = [1,2,3]
# 方法一.列表.copy()
lst2 = lst.copy()
lst.append(5)
print(lst2)
print(lst)

# 方法二 . copy.copy(列表)
import copy
lst = [1,2,3]
'''copy 模块 . copy()方法'''
lst2 = copy.copy(lst)
lst.append(6)
print(lst2)

(2) 深拷贝 (所有层级,全部都拷贝一份,形成独立的副本)

# 深拷贝语法
lst = [1,2,3,[4,5,6]]
lst2 = copy.deepcopy(lst)
lst[-1].insert(1,888)
print(lst)
print(lst2)

# 深拷贝可以应用在字典中;
dic = {'a':1,'b':[1,2,3]}
dic2 = copy.deepcopy(dic)
dic['b'].append(4)
print(dic2)
# copy 和 deepcopy 谁更快? copy速度更快!

python 深浅拷贝

原文:https://www.cnblogs.com/CrownYP/p/11342738.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!