坚持是一件说起来容易,做起来不容易的事情。
#赋值和浅拷贝以及深拷贝
1、赋值:其实就是对象的引用(别名)
list1 = [12,31,4,5565,34]list2 = list1print(list1)print(list2)list1[2] = "哈哈"print(list1)print(list2)
list1 = [12,31,4,5565,34]
list2 = list1
print(list1)
print(list2)
list1[2] = "哈哈"
print(list1)
print(list2)
输出结果如下:
[12,31,4,5565,34][12,31,4,5565,34][12,31,'哈哈',5565,34][12,31,'哈哈',5565,34]
[12,31,4,5565,34]
[12,31,'哈哈',5565,34]
2、如何解决上述的问题,可以使用浅拷贝的方式解决。浅拷贝可以解决一维列表复制的问题。
import copylist3 = [23,45,6,78,93,42]list4 = list3.copy()print(list3,list4)list2[3] = "呵呵"print(list3)print(list4)
import copy
list3 = [23,45,6,78,93,42]
list4 = list3.copy()
print(list3,list4)
list2[3] = "呵呵"
print(list3)
print(list4)
[23,45,6,78,93,42][23,45,6,78,93,42][23,45,6,'呵呵',93,42][23,45,6,78,93,42]
[23,45,6,78,93,42][23,45,6,78,93,42]
[23,45,6,'呵呵',93,42]
[23,45,6,78,93,42]
深拷贝:用来解决多维列表修改元素时,不能独立处理的问题
list5 = [23,43,[45,52,47],98,94]list6 = list5.copy.deepcopy(list5)print(list5)print(list6)list5[2][1] = "张三"print(list5)print(list6)
list5 = [23,43,[45,52,47],98,94]
list6 = list5.copy.deepcopy(list5)
print(list5)
print(list6)
list5[2][1] = "张三"
print(list5)
print(list6)
[23,43,[45,52,47],98,94][23,45,[45,52,47],98,94][23,43,[45,'张三',47],98,94][23,43,[45,'张三',47],98,94]
[23,43,[45,52,47],98,94]
[23,45,[45,52,47],98,94]
[23,43,[45,'张三',47],98,94]
[23,43,[45,'张三',47],98,94]
(从基础背景开始学起,坚持,是一件不容易的事情。)
文章推荐
从0开始学Python:阶段性学习回顾
学习回顾:从0开始学Python-学习笔记汇总整理
从零开始学Python:第八章“经典案例24个”
文 | Lisa Notes
Lisa Notes |一个Lisa’s notes:生活、工作、学习中那些事儿,感悟自我成长,随心随笔杂谈。微信搜索「Lisa Notes」(ID:Lisa-notes),查看更多信息,原创小说,PPT干货分享。
长按♥一键关注
请在微信客户端打开
特别声明
本文为自媒体、作者等在微信公众号上传并发布,仅代表作者观点,不代表微信公众号的观点或立场,微信公众号仅提供信息发布平台,最终解释权归本人所有。合作请联系13698281600@163.com。
全世界只有不到0.03%的人
关注小SA
你真是个特别的人
快戳我!快戳我!快戳我!㊋㊋㊋