例1:app
a = 15
b = a
a = 16
print(b)
#例2:
lst1 = [1,2,3]
lst2 = lst1
lst1.append(4)
print(lst2)
#這個狀況是lst1和lst2地址相同,元素相同spa
#只拷貝以及全部元素
#例:blog
#法一:直接.copy()拷貝內存
lst1 = [1,2,3]
#lst2 = lst1
lst2 = lst1.copy()
print(lst2)
lst1.append(4)
print(lst2)
print(lst1)
#法二:使用模塊進行淺拷貝
import copy
#copy 模塊下面有一個同名的copy方法
lst1 = [1,2,3]
lst2 = copy.copy(lst1)
lst1.append(5)
print(lst2)字符串
將全部級別的元素通通獨立拷貝一份
"每一級的全部元素通通拷貝一份,不沿用之前的數據"
#import引入copy複製模塊 deepcopy深拷貝 copy淺拷貝
import copy #copy deepcopy()
lstvar = [1,2,3,[4,5,6]]
lstvar2 = copy.deepcopy(lstvar)
lstvar[-1].append(7)
print(lstvar2)
print(lstvar)
dictvar = {'a':[1,2],"b":{"c":123,"d":[7,8,9]}}
dict2 = copy.deepcopy(dictvar)
dictvar["b"]["d"].extend("ab")
print(dict2)
lstvar = [1,2,3,[4,5]]
lst2 = copy.copy(lstvar)
print(lst2)
lstvar.append(66)
print(lst2)class
#在淺拷貝中把字符串這樣列表的當着一級容器數據
lstvar = [1,2,3,"45"]
lstvar2 = copy.copy(lstvar)
# lstvar[-1] = 1234 #
# print(lstvar)
# print(lstvar2)import
#賦值與淺拷貝與深拷貝內存關係容器
淺拷貝只有一級數據時獨立的,二級的數據時相同的地址的方法