
列表_拷贝_copy_赋值_assignment 回忆


哪儿 了呢?🤔地址
hero_list = ["刘备", "关羽", "张飞"] print(hero_list) del hero_list[1:2] print(hero_list)

消失了观察
新变量 呢?hero_list = ["刘备", "关羽", "张飞"] print(hero_list) selected = hero_list[1:2] del hero_list[1:2] print(hero_list) print(selected)

修改切片
hero_list = ["刘备", "关羽", "张飞"] print(hero_list) selected = hero_list[1:2] del hero_list[1:2] selected.append("赵云") print(hero_list) print(selected)

互相影响
clist1 = list("oeasy") clist2 = clist1 clist1.append("?") clist2.append("!")

id
clist1 = list("oeasy") print(clist1,id(clist1)) clist2 = clist1 print(clist2, id(clist2)) clist1.append("?") clist2.append("!") print(id(clist1) == id(clist2))
同一个对象地址
几次 呢?getrefcount
引用次数import sys clist1 = list("oeasy") print(sys.getrefcount(clist1))

2个引用 呢?帮助手册 import sys help(sys.getrefcount)

取消引用 clist2 = clist1 print(sys.getrefcount(clist1)) clist2 = [] print(sys.getrefcount(clist1)) del clist1 print(sys.getrefcount(clist1))

同一位置
一改全改一改全改 吗?使用构造函数
新造一个 nlist2nlist1 = [1, 2, 3] nlist2 = list(nlist1) print(id(nlist1), id(nlist2))
不同
不同
不影响 原列表 吗?copy副本
clist1 = list("oeasy") clist2 = clist1.copy() clist1.append("?") clist2.append("!")

确保
clist1 = list("oeasy") clist2 = clist1.copy() print(id(clist1)) print(id(clist2))

copy


拷贝


副本(copy)总结🤔
clist1 = list("oeasy") clist2 = clist1 clist2 = clist1.copy()

lst1 + lst2
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。