python深拷贝
只有可變對象才有拷貝的說法
import copyclass A:def __init__(self):self.list = [] # 可變對象a1 = A() a2 = a1 # a2 和 a1 完全相同 a3 = copy.copy(a1) # a3 淺拷貝了 a1,即 a3 本身是新的,但內部的數據和 a1 是共享的 a4 = copy.deepcopy(a1) # a4 是深拷貝,a4 和 a4 的屬性都是新的print("id(a1)={0}, id(list)={1}".format( id(a1), id(a1.list)) ) print("id(a2)={0}, id(list)={1}".format( id(a2), id(a2.list)) ) print("id(a3)={0}, id(list)={1}".format( id(a3), id(a3.list)) ) print("id(a4)={0}, id(list)={1}".format( id(a4), id(a4.list)) )a1.list.append(123) print(a1.list) print(a2.list) print(a3.list) print(a4.list)運行結果:
 
總結
                            
                        - 上一篇: sudo不输入密码
 - 下一篇: python的protected和pri