深拷贝:a -> b copy(a) a -> c content(b) = content(c) && id(b) != id(c) 浅拷贝:a -> b copy(a) a -> b
也就是说深拷贝为新对象制定了独立的新拷贝,逻辑不相关,而只是内容相同,而浅拷贝只是简单的复制引用关系。 引用时不可改变的指针,指针是可改变的引用。
person = ['name',['Saving',100.0]]
hubby = person[:]
#wife = list[person]
print 'before',
print person , hubby
print [id(x) for x in person]
print [id(x) for x in hubby]
print '====================================='
hubby[0] = 'joe'
hubby[1][1] = 50
print 'after',
print person , hubby
print [id(x) for x in person]
print [id(x) for x in hubby]