Python list的深拷贝和浅拷贝
-
深拷贝和浅拷贝
列表存储数据,列表拷贝就是数据备份
浅拷贝
优点:占用内存较少
缺点:修改深层数据,会影响原数据深拷贝
优点:修改数据,互不影响
缺点:占用内存较大""" 深浅拷贝 浅拷贝 复制 一层 深拷贝 复制 全部 修改拷贝后是否影响拷贝前? 如果数据有 1份, 那么互相影响 如果数据有 2份, 那么互不影响 """ # 准备深拷贝工具 import copy list_01 = [10, [20, 30]] list_02 = list_01 # 赋值 list_03 = list_01[:] # 切片(浅拷贝) list_04 = copy.deepcopy(list_01) # 深拷贝
list_02[0] = 10000 # 因为数据1份,所以互相影响 list_02[1][0] = 20000 list_03[0] = 1000 # 修改浅拷贝浅数据不影响拷贝前的数据 list_03[1][0] = 2000 # 修改浅拷贝深层数据影响拷贝前的数据 list_04[0] = 100 list_04[1][0] = 200 # 修改深拷贝后数据 不影拷贝前的数据