运行下面代码:
a = [1, 2, 3]
b = []
c = []
b.append(a)
c.append(a[:])
a.pop()
print(b)
print(c)
运行结果:
[[1, 2]]
[[1, 2, 3]]
可以看出a,a[:]是不一样的,a类似于浅复制,访问的是对象。a[:]类似于深复制,和a没有关系了,a改变不会影响c
深拷贝就是完全跟以前就没有任何关系了,原来的对象怎么改都不会影响当前对象。
浅拷贝,原对象的list元素改变的话会改变当前对象,如果当前对象中list元素改变了,也同样会影响原对象。
下面这个代码运行结果可以看出count()是比较数值,数值一样就匹配成功了
q = [[1,2,3],[6,7,8]]
a = [1,2,3]
print(q.count(a))