python学习笔记(五)-- 深拷贝、浅拷贝

时间:2019-04-22 13:29:39   收藏:0   阅读:146
深拷贝--两个变量指向不同内存地址
L1 = [1,2,3,4,5]
L2 = L1[:]#深拷贝
浅拷贝--两个变量指向同一内存地址
L3 = L1#浅拷贝
#循环list的时候,不要删除元素,下标会错乱
#可以用两个list,循环一个,删除另一个
li = [1,1,2,3,4,5,6,7,8,9]
li2 = [1,1,2,3,4,5,6,7,8,9]
#li2 = li[:]
for i in li2:
    if i%2!=0:
        li.remove(i)
print(li)

import copy
d = {"name":"xiaomi",l:[4,5,6]}
d1 = copy.deepcopy(d) #深拷贝
d1[age] = 14
d1[l].append(8)
print(d,d)
print(d1,d1)
d1 = copy.copy(d) #如果里面多加一层,就又是浅拷贝

 

 

原文:https://www.cnblogs.com/yanyan-/p/10749403.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!