a = [1,2,3] b = [] b=a a.clear()
a 清空后,b也空了。
为什么
clear清除的是地址
[ 自己解决 ]
这是因为,在python中一切皆对象,a,b两个变量其实绑定的是同一个对象,也就是说a,b两个变量指向内存中的同一段地址,当调用clear函数时,会清空列表在内存中的内容,此时列表就变成了一个空列表,所以变量a,变量b就指向了一个空列表。
a,b共用一个内存地址,清除谁都为空,你可以看看深浅拷贝内容